[INFO] fetching crate simavr-ffi 1.2.7...
[INFO] testing simavr-ffi-1.2.7 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate simavr-ffi 1.2.7 into /workspace/builds/worker-4-tc1/source
[INFO] removed /workspace/builds/worker-4-tc1/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate simavr-ffi 1.2.7
[INFO] finished tweaking crates.io crate simavr-ffi 1.2.7
[INFO] tweaked toml for crates.io crate simavr-ffi 1.2.7 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate simavr-ffi 1.2.7 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] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 51 packages to highest compatible versions
[INFO] [stderr]       Adding bindgen v0.69.5 (available: v0.73.2)
[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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ae4bca3ae6d86d77c60273be01710faf79de38246a557b44ab07a9e2a6dd3ad9
[INFO] running `Command { std: "docker" "start" "ae4bca3ae6d86d77c60273be01710faf79de38246a557b44ab07a9e2a6dd3ad9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ae4bca3ae6d86d77c60273be01710faf79de38246a557b44ab07a9e2a6dd3ad9", 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" "ae4bca3ae6d86d77c60273be01710faf79de38246a557b44ab07a9e2a6dd3ad9" "/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" "ae4bca3ae6d86d77c60273be01710faf79de38246a557b44ab07a9e2a6dd3ad9", 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" "ae4bca3ae6d86d77c60273be01710faf79de38246a557b44ab07a9e2a6dd3ad9" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling glob v0.3.4
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling bitflags v2.13.2
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling either v1.19.0
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling libc v0.2.190
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling bindgen v0.69.5
[INFO] [stderr]    Compiling log v0.4.34
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling clang-sys v1.9.1
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling simavr-ffi v1.2.7 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/simavr-ffi-0515f8f4cc440acb/out/bindings.rs:3:300085
[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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { 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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { pub _address : u8 , }
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/simavr-ffi-0515f8f4cc440acb/out/bindings.rs:3:300273
[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]   |
[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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { 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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 = i32::cast_unsigned (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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { pub _address : u8 , }
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/simavr-ffi-0515f8f4cc440acb/out/bindings.rs:3:300663
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_uni...
[INFO] [stdout]   |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { 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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 { i32::cast_unsigned (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub type cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { pub _address : u8 , }
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 31.22s
[INFO] running `Command { std: "docker" "inspect" "ae4bca3ae6d86d77c60273be01710faf79de38246a557b44ab07a9e2a6dd3ad9", 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" "ae4bca3ae6d86d77c60273be01710faf79de38246a557b44ab07a9e2a6dd3ad9" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/simavr-ffi-0515f8f4cc440acb/out/bindings.rs:3:300085
[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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { 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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { pub _address : u8 , }
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/simavr-ffi-0515f8f4cc440acb/out/bindings.rs:3:300273
[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]   |
[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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { 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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 = i32::cast_unsigned (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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { pub _address : u8 , }
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/simavr-ffi-0515f8f4cc440acb/out/bindings.rs:3:300663
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_uni...
[INFO] [stdout]   |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { 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) ; } } } # [derive (PartialEq , Copy , Clone , Hash , Debug , Default)] # [repr (C)] pub struct __BindgenComplex < T > { pub re : T , pub im : T } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub const _STDINT_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __GLIBC_USE_ISOC2Y : u32 = 0 ; pub const __GLIBC_USE_ISOC23 : u32 = 0 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 202405 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_XOPEN2K24 : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __TIMESIZE : u32 = 64 ; pub const __USE_TIME_BITS64 : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_SCANF : u32 = 0 ; pub const __GLIBC_USE_C23_STRTOL : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_60559_BFP__ : u32 = 201404 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_IEC_60559_COMPLEX__ : u32 = 201404 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 43 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI : u32 = 0 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C23 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __STATFS_MATCHES_STATFS64 : u32 = 1 ; pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const _BITS_TIME64_H : u32 = 1 ; pub const _BITS_WCHAR_H : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const _BITS_STDINT_UINTN_H : u32 = 1 ; pub const _BITS_STDINT_LEAST_H : u32 = 1 ; pub const INT8_MIN : i32 = - 128 ; pub const INT16_MIN : i32 = - 32768 ; pub const INT32_MIN : i32 = - 2147483648 ; pub const INT8_MAX : u32 = 127 ; pub const INT16_MAX : u32 = 32767 ; pub const INT32_MAX : u32 = 2147483647 ; pub const UINT8_MAX : u32 = 255 ; pub const UINT16_MAX : u32 = 65535 ; pub const UINT32_MAX : u32 = 4294967295 ; pub const INT_LEAST8_MIN : i32 = - 128 ; pub const INT_LEAST16_MIN : i32 = - 32768 ; pub const INT_LEAST32_MIN : i32 = - 2147483648 ; pub const INT_LEAST8_MAX : u32 = 127 ; pub const INT_LEAST16_MAX : u32 = 32767 ; pub const INT_LEAST32_MAX : u32 = 2147483647 ; pub const UINT_LEAST8_MAX : u32 = 255 ; pub const UINT_LEAST16_MAX : u32 = 65535 ; pub const UINT_LEAST32_MAX : u32 = 4294967295 ; pub const INT_FAST8_MIN : i32 = - 128 ; pub const INT_FAST16_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST32_MIN : i64 = - 9223372036854775808 ; pub const INT_FAST8_MAX : u32 = 127 ; pub const INT_FAST16_MAX : u64 = 9223372036854775807 ; pub const INT_FAST32_MAX : u64 = 9223372036854775807 ; pub const UINT_FAST8_MAX : u32 = 255 ; pub const UINT_FAST16_MAX : i32 = - 1 ; pub const UINT_FAST32_MAX : i32 = - 1 ; pub const INTPTR_MIN : i64 = - 9223372036854775808 ; pub const INTPTR_MAX : u64 = 9223372036854775807 ; pub const UINTPTR_MAX : i32 = - 1 ; pub const PTRDIFF_MIN : i64 = - 9223372036854775808 ; pub const PTRDIFF_MAX : u64 = 9223372036854775807 ; pub const SIG_ATOMIC_MIN : i32 = - 2147483648 ; pub const SIG_ATOMIC_MAX : u32 = 2147483647 ; pub const SIZE_MAX : i32 = - 1 ; pub const WINT_MIN : u32 = 0 ; pub const WINT_MAX : u32 = 4294967295 ; pub const _INTTYPES_H : u32 = 1 ; pub const ____gwchar_t_defined : u32 = 1 ; pub const __PRI64_PREFIX : & [u8 ; 2] = b"l\0" ; pub const __PRIPTR_PREFIX : & [u8 ; 2] = b"l\0" ; pub const PRId8 : & [u8 ; 4] = b"hhd\0" ; pub const PRId16 : & [u8 ; 3] = b"hd\0" ; pub const PRId32 : & [u8 ; 2] = b"d\0" ; pub const PRId64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const PRIdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const PRIdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const PRIdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const PRIdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const PRIi8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIi16 : & [u8 ; 3] = b"hi\0" ; pub const PRIi32 : & [u8 ; 2] = b"i\0" ; pub const PRIi64 : & [u8 ; 3] = b"li\0" ; pub const PRIiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const PRIiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const PRIiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const PRIiFAST16 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST32 : & [u8 ; 3] = b"li\0" ; pub const PRIiFAST64 : & [u8 ; 3] = b"li\0" ; pub const PRIo8 : & [u8 ; 4] = b"hho\0" ; pub const PRIo16 : & [u8 ; 3] = b"ho\0" ; pub const PRIo32 : & [u8 ; 2] = b"o\0" ; pub const PRIo64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const PRIoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const PRIoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const PRIoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const PRIoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const PRIu8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIu16 : & [u8 ; 3] = b"hu\0" ; pub const PRIu32 : & [u8 ; 2] = b"u\0" ; pub const PRIu64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const PRIuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const PRIuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const PRIuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const PRIuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const PRIx8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIx16 : & [u8 ; 3] = b"hx\0" ; pub const PRIx32 : & [u8 ; 2] = b"x\0" ; pub const PRIx64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const PRIxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const PRIxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const PRIxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const PRIxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const PRIX8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIX16 : & [u8 ; 3] = b"hX\0" ; pub const PRIX32 : & [u8 ; 2] = b"X\0" ; pub const PRIX64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXLEAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXLEAST16 : & [u8 ; 3] = b"hX\0" ; pub const PRIXLEAST32 : & [u8 ; 2] = b"X\0" ; pub const PRIXLEAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST8 : & [u8 ; 4] = b"hhX\0" ; pub const PRIXFAST16 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST32 : & [u8 ; 3] = b"lX\0" ; pub const PRIXFAST64 : & [u8 ; 3] = b"lX\0" ; pub const PRIdMAX : & [u8 ; 3] = b"ld\0" ; pub const PRIiMAX : & [u8 ; 3] = b"li\0" ; pub const PRIoMAX : & [u8 ; 3] = b"lo\0" ; pub const PRIuMAX : & [u8 ; 3] = b"lu\0" ; pub const PRIxMAX : & [u8 ; 3] = b"lx\0" ; pub const PRIXMAX : & [u8 ; 3] = b"lX\0" ; pub const PRIdPTR : & [u8 ; 3] = b"ld\0" ; pub const PRIiPTR : & [u8 ; 3] = b"li\0" ; pub const PRIoPTR : & [u8 ; 3] = b"lo\0" ; pub const PRIuPTR : & [u8 ; 3] = b"lu\0" ; pub const PRIxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRIXPTR : & [u8 ; 3] = b"lX\0" ; pub const SCNd8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNd16 : & [u8 ; 3] = b"hd\0" ; pub const SCNd32 : & [u8 ; 2] = b"d\0" ; pub const SCNd64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdLEAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdLEAST16 : & [u8 ; 3] = b"hd\0" ; pub const SCNdLEAST32 : & [u8 ; 2] = b"d\0" ; pub const SCNdLEAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST8 : & [u8 ; 4] = b"hhd\0" ; pub const SCNdFAST16 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST32 : & [u8 ; 3] = b"ld\0" ; pub const SCNdFAST64 : & [u8 ; 3] = b"ld\0" ; pub const SCNi8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNi16 : & [u8 ; 3] = b"hi\0" ; pub const SCNi32 : & [u8 ; 2] = b"i\0" ; pub const SCNi64 : & [u8 ; 3] = b"li\0" ; pub const SCNiLEAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiLEAST16 : & [u8 ; 3] = b"hi\0" ; pub const SCNiLEAST32 : & [u8 ; 2] = b"i\0" ; pub const SCNiLEAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST8 : & [u8 ; 4] = b"hhi\0" ; pub const SCNiFAST16 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST32 : & [u8 ; 3] = b"li\0" ; pub const SCNiFAST64 : & [u8 ; 3] = b"li\0" ; pub const SCNu8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNu16 : & [u8 ; 3] = b"hu\0" ; pub const SCNu32 : & [u8 ; 2] = b"u\0" ; pub const SCNu64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuLEAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuLEAST16 : & [u8 ; 3] = b"hu\0" ; pub const SCNuLEAST32 : & [u8 ; 2] = b"u\0" ; pub const SCNuLEAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST8 : & [u8 ; 4] = b"hhu\0" ; pub const SCNuFAST16 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST32 : & [u8 ; 3] = b"lu\0" ; pub const SCNuFAST64 : & [u8 ; 3] = b"lu\0" ; pub const SCNo8 : & [u8 ; 4] = b"hho\0" ; pub const SCNo16 : & [u8 ; 3] = b"ho\0" ; pub const SCNo32 : & [u8 ; 2] = b"o\0" ; pub const SCNo64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoLEAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoLEAST16 : & [u8 ; 3] = b"ho\0" ; pub const SCNoLEAST32 : & [u8 ; 2] = b"o\0" ; pub const SCNoLEAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST8 : & [u8 ; 4] = b"hho\0" ; pub const SCNoFAST16 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST32 : & [u8 ; 3] = b"lo\0" ; pub const SCNoFAST64 : & [u8 ; 3] = b"lo\0" ; pub const SCNx8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNx16 : & [u8 ; 3] = b"hx\0" ; pub const SCNx32 : & [u8 ; 2] = b"x\0" ; pub const SCNx64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxLEAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxLEAST16 : & [u8 ; 3] = b"hx\0" ; pub const SCNxLEAST32 : & [u8 ; 2] = b"x\0" ; pub const SCNxLEAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST8 : & [u8 ; 4] = b"hhx\0" ; pub const SCNxFAST16 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST32 : & [u8 ; 3] = b"lx\0" ; pub const SCNxFAST64 : & [u8 ; 3] = b"lx\0" ; pub const SCNdMAX : & [u8 ; 3] = b"ld\0" ; pub const SCNiMAX : & [u8 ; 3] = b"li\0" ; pub const SCNoMAX : & [u8 ; 3] = b"lo\0" ; pub const SCNuMAX : & [u8 ; 3] = b"lu\0" ; pub const SCNxMAX : & [u8 ; 3] = b"lx\0" ; pub const SCNdPTR : & [u8 ; 3] = b"ld\0" ; pub const SCNiPTR : & [u8 ; 3] = b"li\0" ; pub const SCNoPTR : & [u8 ; 3] = b"lo\0" ; pub const SCNuPTR : & [u8 ; 3] = b"lu\0" ; pub const SCNxPTR : & [u8 ; 3] = b"lx\0" ; pub const PRI_avr_cycle_count : & [u8 ; 3] = b"lu\0" ; pub const MAX_AVR_COMMANDS : u32 = 32 ; pub const MAX_CYCLE_TIMERS : u32 = 64 ; pub const OLD_PC_SIZE : u32 = 32 ; pub const AVR_FUSE_LOW : u32 = 0 ; pub const AVR_FUSE_HIGH : u32 = 1 ; pub const AVR_FUSE_EXT : u32 = 2 ; pub const SRAM_TRACEPOINT_SIZE : u32 = 16 ; pub const AVR_IOMEM_IRQ_ALL : u32 = 8 ; pub const _NETINET_IN_H : u32 = 1 ; pub const _SYS_SOCKET_H : u32 = 1 ; pub const __iovec_defined : u32 = 1 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __time_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const _BITS_ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const _BITS_ENDIANNESS_H : u32 = 1 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __sigset_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _STRUCT_TIMESPEC : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const _THREAD_MUTEX_INTERNAL_H : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const PF_UNSPEC : u32 = 0 ; pub const PF_LOCAL : u32 = 1 ; pub const PF_UNIX : u32 = 1 ; pub const PF_FILE : u32 = 1 ; pub const PF_INET : u32 = 2 ; pub const PF_AX25 : u32 = 3 ; pub const PF_IPX : u32 = 4 ; pub const PF_APPLETALK : u32 = 5 ; pub const PF_NETROM : u32 = 6 ; pub const PF_BRIDGE : u32 = 7 ; pub const PF_ATMPVC : u32 = 8 ; pub const PF_X25 : u32 = 9 ; pub const PF_INET6 : u32 = 10 ; pub const PF_ROSE : u32 = 11 ; pub const PF_DECnet : u32 = 12 ; pub const PF_NETBEUI : u32 = 13 ; pub const PF_SECURITY : u32 = 14 ; pub const PF_KEY : u32 = 15 ; pub const PF_NETLINK : u32 = 16 ; pub const PF_ROUTE : u32 = 16 ; pub const PF_PACKET : u32 = 17 ; pub const PF_ASH : u32 = 18 ; pub const PF_ECONET : u32 = 19 ; pub const PF_ATMSVC : u32 = 20 ; pub const PF_RDS : u32 = 21 ; pub const PF_SNA : u32 = 22 ; pub const PF_IRDA : u32 = 23 ; pub const PF_PPPOX : u32 = 24 ; pub const PF_WANPIPE : u32 = 25 ; pub const PF_LLC : u32 = 26 ; pub const PF_IB : u32 = 27 ; pub const PF_MPLS : u32 = 28 ; pub const PF_CAN : u32 = 29 ; pub const PF_TIPC : u32 = 30 ; pub const PF_BLUETOOTH : u32 = 31 ; pub const PF_IUCV : u32 = 32 ; pub const PF_RXRPC : u32 = 33 ; pub const PF_ISDN : u32 = 34 ; pub const PF_PHONET : u32 = 35 ; pub const PF_IEEE802154 : u32 = 36 ; pub const PF_CAIF : u32 = 37 ; pub const PF_ALG : u32 = 38 ; pub const PF_NFC : u32 = 39 ; pub const PF_VSOCK : u32 = 40 ; pub const PF_KCM : u32 = 41 ; pub const PF_QIPCRTR : u32 = 42 ; pub const PF_SMC : u32 = 43 ; pub const PF_XDP : u32 = 44 ; pub const PF_MCTP : u32 = 45 ; pub const PF_MAX : u32 = 46 ; pub const AF_UNSPEC : u32 = 0 ; pub const AF_LOCAL : u32 = 1 ; pub const AF_UNIX : u32 = 1 ; pub const AF_FILE : u32 = 1 ; pub const AF_INET : u32 = 2 ; pub const AF_AX25 : u32 = 3 ; pub const AF_IPX : u32 = 4 ; pub const AF_APPLETALK : u32 = 5 ; pub const AF_NETROM : u32 = 6 ; pub const AF_BRIDGE : u32 = 7 ; pub const AF_ATMPVC : u32 = 8 ; pub const AF_X25 : u32 = 9 ; pub const AF_INET6 : u32 = 10 ; pub const AF_ROSE : u32 = 11 ; pub const AF_DECnet : u32 = 12 ; pub const AF_NETBEUI : u32 = 13 ; pub const AF_SECURITY : u32 = 14 ; pub const AF_KEY : u32 = 15 ; pub const AF_NETLINK : u32 = 16 ; pub const AF_ROUTE : u32 = 16 ; pub const AF_PACKET : u32 = 17 ; pub const AF_ASH : u32 = 18 ; pub const AF_ECONET : u32 = 19 ; pub const AF_ATMSVC : u32 = 20 ; pub const AF_RDS : u32 = 21 ; pub const AF_SNA : u32 = 22 ; pub const AF_IRDA : u32 = 23 ; pub const AF_PPPOX : u32 = 24 ; pub const AF_WANPIPE : u32 = 25 ; pub const AF_LLC : u32 = 26 ; pub const AF_IB : u32 = 27 ; pub const AF_MPLS : u32 = 28 ; pub const AF_CAN : u32 = 29 ; pub const AF_TIPC : u32 = 30 ; pub const AF_BLUETOOTH : u32 = 31 ; pub const AF_IUCV : u32 = 32 ; pub const AF_RXRPC : u32 = 33 ; pub const AF_ISDN : u32 = 34 ; pub const AF_PHONET : u32 = 35 ; pub const AF_IEEE802154 : u32 = 36 ; pub const AF_CAIF : u32 = 37 ; pub const AF_ALG : u32 = 38 ; pub const AF_NFC : u32 = 39 ; pub const AF_VSOCK : u32 = 40 ; pub const AF_KCM : u32 = 41 ; pub const AF_QIPCRTR : u32 = 42 ; pub const AF_SMC : u32 = 43 ; pub const AF_XDP : u32 = 44 ; pub const AF_MCTP : u32 = 45 ; pub const AF_MAX : u32 = 46 ; pub const SOL_RAW : u32 = 255 ; pub const SOL_DECNET : u32 = 261 ; pub const SOL_X25 : u32 = 262 ; pub const SOL_PACKET : u32 = 263 ; pub const SOL_ATM : u32 = 264 ; pub const SOL_AAL : u32 = 265 ; pub const SOL_IRDA : u32 = 266 ; pub const SOL_NETBEUI : u32 = 267 ; pub const SOL_LLC : u32 = 268 ; pub const SOL_DCCP : u32 = 269 ; pub const SOL_NETLINK : u32 = 270 ; pub const SOL_TIPC : u32 = 271 ; pub const SOL_RXRPC : u32 = 272 ; pub const SOL_PPPOL2TP : u32 = 273 ; pub const SOL_BLUETOOTH : u32 = 274 ; pub const SOL_PNPIPE : u32 = 275 ; pub const SOL_RDS : u32 = 276 ; pub const SOL_IUCV : u32 = 277 ; pub const SOL_CAIF : u32 = 278 ; pub const SOL_ALG : u32 = 279 ; pub const SOL_NFC : u32 = 280 ; pub const SOL_KCM : u32 = 281 ; pub const SOL_TLS : u32 = 282 ; pub const SOL_XDP : u32 = 283 ; pub const SOL_MPTCP : u32 = 284 ; pub const SOL_MCTP : u32 = 285 ; pub const SOL_SMC : u32 = 286 ; pub const SOL_VSOCK : u32 = 287 ; pub const SOMAXCONN : u32 = 4096 ; pub const _BITS_SOCKADDR_H : u32 = 1 ; pub const _SS_SIZE : u32 = 128 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const __BITS_PER_LONG_LONG : u32 = 64 ; pub const FIOSETOWN : u32 = 35073 ; pub const SIOCSPGRP : u32 = 35074 ; pub const FIOGETOWN : u32 = 35075 ; pub const SIOCGPGRP : u32 = 35076 ; pub const SIOCATMARK : u32 = 35077 ; pub const SIOCGSTAMP_OLD : u32 = 35078 ; pub const SIOCGSTAMPNS_OLD : u32 = 35079 ; pub const SOL_SOCKET : u32 = 1 ; pub const SO_DEBUG : u32 = 1 ; pub const SO_REUSEADDR : u32 = 2 ; pub const SO_TYPE : u32 = 3 ; pub const SO_ERROR : u32 = 4 ; pub const SO_DONTROUTE : u32 = 5 ; pub const SO_BROADCAST : u32 = 6 ; pub const SO_SNDBUF : u32 = 7 ; pub const SO_RCVBUF : u32 = 8 ; pub const SO_SNDBUFFORCE : u32 = 32 ; pub const SO_RCVBUFFORCE : u32 = 33 ; pub const SO_KEEPALIVE : u32 = 9 ; pub const SO_OOBINLINE : u32 = 10 ; pub const SO_NO_CHECK : u32 = 11 ; pub const SO_PRIORITY : u32 = 12 ; pub const SO_LINGER : u32 = 13 ; pub const SO_BSDCOMPAT : u32 = 14 ; pub const SO_REUSEPORT : u32 = 15 ; pub const SO_PASSCRED : u32 = 16 ; pub const SO_PEERCRED : u32 = 17 ; pub const SO_RCVLOWAT : u32 = 18 ; pub const SO_SNDLOWAT : u32 = 19 ; pub const SO_RCVTIMEO_OLD : u32 = 20 ; pub const SO_SNDTIMEO_OLD : u32 = 21 ; pub const SO_SECURITY_AUTHENTICATION : u32 = 22 ; pub const SO_SECURITY_ENCRYPTION_TRANSPORT : u32 = 23 ; pub const SO_SECURITY_ENCRYPTION_NETWORK : u32 = 24 ; pub const SO_BINDTODEVICE : u32 = 25 ; pub const SO_ATTACH_FILTER : u32 = 26 ; pub const SO_DETACH_FILTER : u32 = 27 ; pub const SO_GET_FILTER : u32 = 26 ; pub const SO_PEERNAME : u32 = 28 ; pub const SO_ACCEPTCONN : u32 = 30 ; pub const SO_PEERSEC : u32 = 31 ; pub const SO_PASSSEC : u32 = 34 ; pub const SO_MARK : u32 = 36 ; pub const SO_PROTOCOL : u32 = 38 ; pub const SO_DOMAIN : u32 = 39 ; pub const SO_RXQ_OVFL : u32 = 40 ; pub const SO_WIFI_STATUS : u32 = 41 ; pub const SCM_WIFI_STATUS : u32 = 41 ; pub const SO_PEEK_OFF : u32 = 42 ; pub const SO_NOFCS : u32 = 43 ; pub const SO_LOCK_FILTER : u32 = 44 ; pub const SO_SELECT_ERR_QUEUE : u32 = 45 ; pub const SO_BUSY_POLL : u32 = 46 ; pub const SO_MAX_PACING_RATE : u32 = 47 ; pub const SO_BPF_EXTENSIONS : u32 = 48 ; pub const SO_INCOMING_CPU : u32 = 49 ; pub const SO_ATTACH_BPF : u32 = 50 ; pub const SO_DETACH_BPF : u32 = 27 ; pub const SO_ATTACH_REUSEPORT_CBPF : u32 = 51 ; pub const SO_ATTACH_REUSEPORT_EBPF : u32 = 52 ; pub const SO_CNX_ADVICE : u32 = 53 ; pub const SCM_TIMESTAMPING_OPT_STATS : u32 = 54 ; pub const SO_MEMINFO : u32 = 55 ; pub const SO_INCOMING_NAPI_ID : u32 = 56 ; pub const SO_COOKIE : u32 = 57 ; pub const SCM_TIMESTAMPING_PKTINFO : u32 = 58 ; pub const SO_PEERGROUPS : u32 = 59 ; pub const SO_ZEROCOPY : u32 = 60 ; pub const SO_TXTIME : u32 = 61 ; pub const SCM_TXTIME : u32 = 61 ; pub const SO_BINDTOIFINDEX : u32 = 62 ; pub const SO_TIMESTAMP_OLD : u32 = 29 ; pub const SO_TIMESTAMPNS_OLD : u32 = 35 ; pub const SO_TIMESTAMPING_OLD : u32 = 37 ; pub const SO_TIMESTAMP_NEW : u32 = 63 ; pub const SO_TIMESTAMPNS_NEW : u32 = 64 ; pub const SO_TIMESTAMPING_NEW : u32 = 65 ; pub const SO_RCVTIMEO_NEW : u32 = 66 ; pub const SO_SNDTIMEO_NEW : u32 = 67 ; pub const SO_DETACH_REUSEPORT_BPF : u32 = 68 ; pub const SO_PREFER_BUSY_POLL : u32 = 69 ; pub const SO_BUSY_POLL_BUDGET : u32 = 70 ; pub const SO_NETNS_COOKIE : u32 = 71 ; pub const SO_BUF_LOCK : u32 = 72 ; pub const SO_RESERVE_MEM : u32 = 73 ; pub const SO_TXREHASH : u32 = 74 ; pub const SO_RCVMARK : u32 = 75 ; pub const SO_PASSPIDFD : u32 = 76 ; pub const SO_PEERPIDFD : u32 = 77 ; pub const SO_DEVMEM_LINEAR : u32 = 78 ; pub const SCM_DEVMEM_LINEAR : u32 = 78 ; pub const SO_DEVMEM_DMABUF : u32 = 79 ; pub const SCM_DEVMEM_DMABUF : u32 = 79 ; pub const SO_DEVMEM_DONTNEED : u32 = 80 ; pub const SCM_TS_OPT_ID : u32 = 81 ; pub const SO_RCVPRIORITY : u32 = 82 ; pub const SO_PASSRIGHTS : u32 = 83 ; pub const SO_INQ : u32 = 84 ; pub const SCM_INQ : u32 = 84 ; pub const SO_TIMESTAMP : u32 = 29 ; pub const SO_TIMESTAMPNS : u32 = 35 ; pub const SO_TIMESTAMPING : u32 = 37 ; pub const SO_RCVTIMEO : u32 = 20 ; pub const SO_SNDTIMEO : u32 = 21 ; pub const SCM_TIMESTAMP : u32 = 29 ; pub const SCM_TIMESTAMPNS : u32 = 35 ; pub const SCM_TIMESTAMPING : u32 = 37 ; pub const __osockaddr_defined : u32 = 1 ; pub const __USE_KERNEL_IPV6_DEFS : u32 = 0 ; pub const IP_OPTIONS : u32 = 4 ; pub const IP_HDRINCL : u32 = 3 ; pub const IP_TOS : u32 = 1 ; pub const IP_TTL : u32 = 2 ; pub const IP_RECVOPTS : u32 = 6 ; pub const IP_RETOPTS : u32 = 7 ; pub const IP_MULTICAST_IF : u32 = 32 ; pub const IP_MULTICAST_TTL : u32 = 33 ; pub const IP_MULTICAST_LOOP : u32 = 34 ; pub const IP_ADD_MEMBERSHIP : u32 = 35 ; pub const IP_DROP_MEMBERSHIP : u32 = 36 ; pub const IP_UNBLOCK_SOURCE : u32 = 37 ; pub const IP_BLOCK_SOURCE : u32 = 38 ; pub const IP_ADD_SOURCE_MEMBERSHIP : u32 = 39 ; pub const IP_DROP_SOURCE_MEMBERSHIP : u32 = 40 ; pub const IP_MSFILTER : u32 = 41 ; pub const MCAST_JOIN_GROUP : u32 = 42 ; pub const MCAST_BLOCK_SOURCE : u32 = 43 ; pub const MCAST_UNBLOCK_SOURCE : u32 = 44 ; pub const MCAST_LEAVE_GROUP : u32 = 45 ; pub const MCAST_JOIN_SOURCE_GROUP : u32 = 46 ; pub const MCAST_LEAVE_SOURCE_GROUP : u32 = 47 ; pub const MCAST_MSFILTER : u32 = 48 ; pub const IP_MULTICAST_ALL : u32 = 49 ; pub const IP_UNICAST_IF : u32 = 50 ; pub const MCAST_EXCLUDE : u32 = 0 ; pub const MCAST_INCLUDE : u32 = 1 ; pub const IP_ROUTER_ALERT : u32 = 5 ; pub const IP_PKTINFO : u32 = 8 ; pub const IP_PKTOPTIONS : u32 = 9 ; pub const IP_PMTUDISC : u32 = 10 ; pub const IP_MTU_DISCOVER : u32 = 10 ; pub const IP_RECVERR : u32 = 11 ; pub const IP_RECVTTL : u32 = 12 ; pub const IP_RECVTOS : u32 = 13 ; pub const IP_MTU : u32 = 14 ; pub const IP_FREEBIND : u32 = 15 ; pub const IP_IPSEC_POLICY : u32 = 16 ; pub const IP_XFRM_POLICY : u32 = 17 ; pub const IP_PASSSEC : u32 = 18 ; pub const IP_TRANSPARENT : u32 = 19 ; pub const IP_ORIGDSTADDR : u32 = 20 ; pub const IP_RECVORIGDSTADDR : u32 = 20 ; pub const IP_MINTTL : u32 = 21 ; pub const IP_NODEFRAG : u32 = 22 ; pub const IP_CHECKSUM : u32 = 23 ; pub const IP_BIND_ADDRESS_NO_PORT : u32 = 24 ; pub const IP_RECVFRAGSIZE : u32 = 25 ; pub const IP_RECVERR_RFC4884 : u32 = 26 ; pub const IP_PMTUDISC_DONT : u32 = 0 ; pub const IP_PMTUDISC_WANT : u32 = 1 ; pub const IP_PMTUDISC_DO : u32 = 2 ; pub const IP_PMTUDISC_PROBE : u32 = 3 ; pub const IP_PMTUDISC_INTERFACE : u32 = 4 ; pub const IP_PMTUDISC_OMIT : u32 = 5 ; pub const IP_LOCAL_PORT_RANGE : u32 = 51 ; pub const IP_PROTOCOL : u32 = 52 ; pub const SOL_IP : u32 = 0 ; pub const IP_DEFAULT_MULTICAST_TTL : u32 = 1 ; pub const IP_DEFAULT_MULTICAST_LOOP : u32 = 1 ; pub const IP_MAX_MEMBERSHIPS : u32 = 20 ; pub const IPV6_ADDRFORM : u32 = 1 ; pub const IPV6_2292PKTINFO : u32 = 2 ; pub const IPV6_2292HOPOPTS : u32 = 3 ; pub const IPV6_2292DSTOPTS : u32 = 4 ; pub const IPV6_2292RTHDR : u32 = 5 ; pub const IPV6_2292PKTOPTIONS : u32 = 6 ; pub const IPV6_CHECKSUM : u32 = 7 ; pub const IPV6_2292HOPLIMIT : u32 = 8 ; pub const IPV6_NEXTHOP : u32 = 9 ; pub const IPV6_AUTHHDR : u32 = 10 ; pub const IPV6_UNICAST_HOPS : u32 = 16 ; pub const IPV6_MULTICAST_IF : u32 = 17 ; pub const IPV6_MULTICAST_HOPS : u32 = 18 ; pub const IPV6_MULTICAST_LOOP : u32 = 19 ; pub const IPV6_JOIN_GROUP : u32 = 20 ; pub const IPV6_LEAVE_GROUP : u32 = 21 ; pub const IPV6_ROUTER_ALERT : u32 = 22 ; pub const IPV6_MTU_DISCOVER : u32 = 23 ; pub const IPV6_MTU : u32 = 24 ; pub const IPV6_RECVERR : u32 = 25 ; pub const IPV6_V6ONLY : u32 = 26 ; pub const IPV6_JOIN_ANYCAST : u32 = 27 ; pub const IPV6_LEAVE_ANYCAST : u32 = 28 ; pub const IPV6_MULTICAST_ALL : u32 = 29 ; pub const IPV6_ROUTER_ALERT_ISOLATE : u32 = 30 ; pub const IPV6_RECVERR_RFC4884 : u32 = 31 ; pub const IPV6_IPSEC_POLICY : u32 = 34 ; pub const IPV6_XFRM_POLICY : u32 = 35 ; pub const IPV6_HDRINCL : u32 = 36 ; pub const IPV6_RECVPKTINFO : u32 = 49 ; pub const IPV6_PKTINFO : u32 = 50 ; pub const IPV6_RECVHOPLIMIT : u32 = 51 ; pub const IPV6_HOPLIMIT : u32 = 52 ; pub const IPV6_RECVHOPOPTS : u32 = 53 ; pub const IPV6_HOPOPTS : u32 = 54 ; pub const IPV6_RTHDRDSTOPTS : u32 = 55 ; pub const IPV6_RECVRTHDR : u32 = 56 ; pub const IPV6_RTHDR : u32 = 57 ; pub const IPV6_RECVDSTOPTS : u32 = 58 ; pub const IPV6_DSTOPTS : u32 = 59 ; pub const IPV6_RECVPATHMTU : u32 = 60 ; pub const IPV6_PATHMTU : u32 = 61 ; pub const IPV6_DONTFRAG : u32 = 62 ; pub const IPV6_RECVTCLASS : u32 = 66 ; pub const IPV6_TCLASS : u32 = 67 ; pub const IPV6_AUTOFLOWLABEL : u32 = 70 ; pub const IPV6_ADDR_PREFERENCES : u32 = 72 ; pub const IPV6_MINHOPCOUNT : u32 = 73 ; pub const IPV6_ORIGDSTADDR : u32 = 74 ; pub const IPV6_RECVORIGDSTADDR : u32 = 74 ; pub const IPV6_TRANSPARENT : u32 = 75 ; pub const IPV6_UNICAST_IF : u32 = 76 ; pub const IPV6_RECVFRAGSIZE : u32 = 77 ; pub const IPV6_FREEBIND : u32 = 78 ; pub const IPV6_ADD_MEMBERSHIP : u32 = 20 ; pub const IPV6_DROP_MEMBERSHIP : u32 = 21 ; pub const IPV6_RXHOPOPTS : u32 = 54 ; pub const IPV6_RXDSTOPTS : u32 = 59 ; pub const IPV6_PMTUDISC_DONT : u32 = 0 ; pub const IPV6_PMTUDISC_WANT : u32 = 1 ; pub const IPV6_PMTUDISC_DO : u32 = 2 ; pub const IPV6_PMTUDISC_PROBE : u32 = 3 ; pub const IPV6_PMTUDISC_INTERFACE : u32 = 4 ; pub const IPV6_PMTUDISC_OMIT : u32 = 5 ; pub const SOL_IPV6 : u32 = 41 ; pub const SOL_ICMPV6 : u32 = 58 ; pub const IPV6_RTHDR_LOOSE : u32 = 0 ; pub const IPV6_RTHDR_STRICT : u32 = 1 ; pub const IPV6_RTHDR_TYPE_0 : u32 = 0 ; pub const IN_CLASSA_NET : u32 = 4278190080 ; pub const IN_CLASSA_NSHIFT : u32 = 24 ; pub const IN_CLASSA_HOST : u32 = 16777215 ; pub const IN_CLASSA_MAX : u32 = 128 ; pub const IN_CLASSB_NET : u32 = 4294901760 ; pub const IN_CLASSB_NSHIFT : u32 = 16 ; pub const IN_CLASSB_HOST : u32 = 65535 ; pub const IN_CLASSB_MAX : u32 = 65536 ; pub const IN_CLASSC_NET : u32 = 4294967040 ; pub const IN_CLASSC_NSHIFT : u32 = 8 ; pub const IN_CLASSC_HOST : u32 = 255 ; pub const IN_LOOPBACKNET : u32 = 127 ; pub const INET_ADDRSTRLEN : u32 = 16 ; pub const INET6_ADDRSTRLEN : u32 = 46 ; pub const _NETINET_TCP_H : u32 = 1 ; pub const TCP_NODELAY : u32 = 1 ; pub const TCP_MAXSEG : u32 = 2 ; pub const TCP_CORK : u32 = 3 ; pub const TCP_KEEPIDLE : u32 = 4 ; pub const TCP_KEEPINTVL : u32 = 5 ; pub const TCP_KEEPCNT : u32 = 6 ; pub const TCP_SYNCNT : u32 = 7 ; pub const TCP_LINGER2 : u32 = 8 ; pub const TCP_DEFER_ACCEPT : u32 = 9 ; pub const TCP_WINDOW_CLAMP : u32 = 10 ; pub const TCP_INFO : u32 = 11 ; pub const TCP_QUICKACK : u32 = 12 ; pub const TCP_CONGESTION : u32 = 13 ; pub const TCP_MD5SIG : u32 = 14 ; pub const TCP_COOKIE_TRANSACTIONS : u32 = 15 ; pub const TCP_THIN_LINEAR_TIMEOUTS : u32 = 16 ; pub const TCP_THIN_DUPACK : u32 = 17 ; pub const TCP_USER_TIMEOUT : u32 = 18 ; pub const TCP_REPAIR : u32 = 19 ; pub const TCP_REPAIR_QUEUE : u32 = 20 ; pub const TCP_QUEUE_SEQ : u32 = 21 ; pub const TCP_REPAIR_OPTIONS : u32 = 22 ; pub const TCP_FASTOPEN : u32 = 23 ; pub const TCP_TIMESTAMP : u32 = 24 ; pub const TCP_NOTSENT_LOWAT : u32 = 25 ; pub const TCP_CC_INFO : u32 = 26 ; pub const TCP_SAVE_SYN : u32 = 27 ; pub const TCP_SAVED_SYN : u32 = 28 ; pub const TCP_REPAIR_WINDOW : u32 = 29 ; pub const TCP_FASTOPEN_CONNECT : u32 = 30 ; pub const TCP_ULP : u32 = 31 ; pub const TCP_MD5SIG_EXT : u32 = 32 ; pub const TCP_FASTOPEN_KEY : u32 = 33 ; pub const TCP_FASTOPEN_NO_COOKIE : u32 = 34 ; pub const TCP_ZEROCOPY_RECEIVE : u32 = 35 ; pub const TCP_INQ : u32 = 36 ; pub const TCP_CM_INQ : u32 = 36 ; pub const TCP_TX_DELAY : u32 = 37 ; pub const TCP_REPAIR_ON : u32 = 1 ; pub const TCP_REPAIR_OFF : u32 = 0 ; pub const TCP_REPAIR_OFF_NO_WP : i32 = - 1 ; pub const TH_FIN : u32 = 1 ; pub const TH_SYN : u32 = 2 ; pub const TH_RST : u32 = 4 ; pub const TH_PUSH : u32 = 8 ; pub const TH_ACK : u32 = 16 ; pub const TH_URG : u32 = 32 ; pub const TCPOPT_EOL : u32 = 0 ; pub const TCPOPT_NOP : u32 = 1 ; pub const TCPOPT_MAXSEG : u32 = 2 ; pub const TCPOLEN_MAXSEG : u32 = 4 ; pub const TCPOPT_WINDOW : u32 = 3 ; pub const TCPOLEN_WINDOW : u32 = 3 ; pub const TCPOPT_SACK_PERMITTED : u32 = 4 ; pub const TCPOLEN_SACK_PERMITTED : u32 = 2 ; pub const TCPOPT_SACK : u32 = 5 ; pub const TCPOPT_TIMESTAMP : u32 = 8 ; pub const TCPOLEN_TIMESTAMP : u32 = 10 ; pub const TCPOLEN_TSTAMP_APPA : u32 = 12 ; pub const TCPOPT_TSTAMP_HDR : u32 = 16844810 ; pub const TCP_MSS : u32 = 512 ; pub const TCP_MAXWIN : u32 = 65535 ; pub const TCP_MAX_WINSHIFT : u32 = 14 ; pub const SOL_TCP : u32 = 6 ; pub const TCPI_OPT_TIMESTAMPS : u32 = 1 ; pub const TCPI_OPT_SACK : u32 = 2 ; pub const TCPI_OPT_WSCALE : u32 = 4 ; pub const TCPI_OPT_ECN : u32 = 8 ; pub const TCPI_OPT_ECN_SEEN : u32 = 16 ; pub const TCPI_OPT_SYN_DATA : u32 = 32 ; pub const TCPI_OPT_USEC_TS : u32 = 64 ; pub const TCPI_OPT_TFO_CHILD : u32 = 128 ; pub const TCP_MD5SIG_MAXKEYLEN : u32 = 80 ; pub const TCP_MD5SIG_FLAG_PREFIX : u32 = 1 ; pub const TCP_MD5SIG_FLAG_IFINDEX : u32 = 2 ; pub const TCP_AO_MAXKEYLEN : u32 = 80 ; pub const TCP_AO_KEYF_IFINDEX : u32 = 1 ; pub const TCP_AO_KEYF_EXCLUDE_OPT : u32 = 2 ; pub const TCP_COOKIE_MIN : u32 = 8 ; pub const TCP_COOKIE_MAX : u32 = 16 ; pub const TCP_COOKIE_PAIR_SIZE : u32 = 32 ; pub const TCP_COOKIE_IN_ALWAYS : u32 = 1 ; pub const TCP_COOKIE_OUT_NEVER : u32 = 2 ; pub const TCP_S_DATA_IN : u32 = 4 ; pub const TCP_S_DATA_OUT : u32 = 8 ; pub const TCP_MSS_DEFAULT : u32 = 536 ; pub const TCP_MSS_DESIRED : u32 = 1220 ; pub const _ARPA_INET_H : u32 = 1 ; pub const _SYS_TIME_H : u32 = 1 ; pub const _SYS_POLL_H : u32 = 1 ; pub const POLLIN : u32 = 1 ; pub const POLLPRI : u32 = 2 ; pub const POLLOUT : u32 = 4 ; pub const POLLRDNORM : u32 = 64 ; pub const POLLRDBAND : u32 = 128 ; pub const POLLWRNORM : u32 = 256 ; pub const POLLWRBAND : u32 = 512 ; pub const POLLERR : u32 = 8 ; pub const POLLHUP : u32 = 16 ; pub const POLLNVAL : u32 = 32 ; pub const AVR_USI_COUNTER_MAX : u32 = 15 ; pub const AVR_SELFPROG_HAVE_RWW : u32 = 1 ; pub const AVR_SELFPROG_HAVE_SIGRD : u32 = 2 ; pub const _STDIO_H : u32 = 1 ; pub const _____fpos_t_defined : u32 = 1 ; pub const ____mbstate_t_defined : u32 = 1 ; pub const _____fpos64_t_defined : u32 = 1 ; pub const ____FILE_defined : u32 = 1 ; pub const __FILE_defined : u32 = 1 ; pub const __struct_FILE_defined : u32 = 1 ; pub const _IO_EOF_SEEN : u32 = 16 ; pub const _IO_ERR_SEEN : u32 = 32 ; pub const _IO_USER_LOCK : u32 = 32768 ; pub const __cookie_io_functions_t_defined : u32 = 1 ; pub const _IOFBF : u32 = 0 ; pub const _IOLBF : u32 = 1 ; pub const _IONBF : u32 = 2 ; pub const BUFSIZ : u32 = 8192 ; pub const EOF : i32 = - 1 ; pub const SEEK_SET : u32 = 0 ; pub const SEEK_CUR : u32 = 1 ; pub const SEEK_END : u32 = 2 ; pub const P_tmpdir : & [u8 ; 5] = b"/tmp\0" ; pub const L_tmpnam : u32 = 20 ; pub const TMP_MAX : u32 = 238328 ; pub const _BITS_STDIO_LIM_H : u32 = 1 ; pub const FILENAME_MAX : u32 = 4096 ; pub const L_ctermid : u32 = 9 ; pub const FOPEN_MAX : u32 = 16 ; pub const __HAVE_FLOAT128 : u32 = 1 ; pub const __HAVE_DISTINCT_FLOAT128 : u32 = 1 ; pub const __HAVE_FLOAT64X : u32 = 1 ; pub const __HAVE_FLOAT64X_LONG_DOUBLE : u32 = 1 ; pub const __HAVE_FLOAT16 : u32 = 0 ; pub const __HAVE_FLOAT32 : u32 = 1 ; pub const __HAVE_FLOAT64 : u32 = 1 ; pub const __HAVE_FLOAT32X : u32 = 1 ; pub const __HAVE_FLOAT128X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT16 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64 : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT32X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT64X : u32 = 0 ; pub const __HAVE_DISTINCT_FLOAT128X : u32 = 0 ; pub const __HAVE_FLOATN_NOT_TYPEDEF : u32 = 0 ; pub const AVR_VCD_MAX_SIGNALS : u32 = 64 ; pub const AVR_IOPORT_OUTPUT : u32 = 256 ; pub const AVR_IOCTL_USB_NAK : i32 = - 2 ; pub const AVR_IOCTL_USB_STALL : i32 = - 3 ; pub const AVR_IOCTL_USB_OK : u32 = 0 ; pub const AVR_TIMER_EXTCLK_CHOOSE : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_TN : u32 = 128 ; pub const AVR_TIMER_EXTCLK_FLAG_STARTED : u32 = 64 ; pub const AVR_TIMER_EXTCLK_FLAG_REVDIR : u32 = 32 ; pub const AVR_TIMER_EXTCLK_FLAG_AS2 : u32 = 16 ; pub const AVR_TIMER_EXTCLK_FLAG_VIRT : u32 = 8 ; pub const AVR_TIMER_EXTCLK_FLAG_EDGE : u32 = 1 ; pub const ELF_SYMBOLS : u32 = 1 ; pub const AVR_SEGMENT_OFFSET_FLASH : u32 = 0 ; pub const AVR_SEGMENT_OFFSET_DATA : u32 = 8388608 ; pub const AVR_SEGMENT_OFFSET_EEPROM : u32 = 8454144 ; pub const AVR_SEGMENT_OFFSET_FUSES : u32 = 8519680 ; pub const AVR_SEGMENT_OFFSET_LOCK : u32 = 8585216 ; pub const AVR_SEGMENT_OFFSET_LAST : u32 = 8650752 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __int_least8_t = __int8_t ; pub type __uint_least8_t = __uint8_t ; pub type __int_least16_t = __int16_t ; pub type __uint_least16_t = __uint16_t ; pub type __int_least32_t = __int32_t ; pub type __uint_least32_t = __uint32_t ; pub type __int_least64_t = __int64_t ; pub type __uint_least64_t = __uint64_t ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __fsid_t { pub __val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__fsid_t) , "::" , stringify ! (__val))) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __suseconds64_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type int_least8_t = __int_least8_t ; pub type int_least16_t = __int_least16_t ; pub type int_least32_t = __int_least32_t ; pub type int_least64_t = __int_least64_t ; pub type uint_least8_t = __uint_least8_t ; pub type uint_least16_t = __uint_least16_t ; pub type uint_least32_t = __uint_least32_t ; pub type uint_least64_t = __uint_least64_t ; pub type int_fast8_t = :: std :: os :: raw :: c_schar ; pub type int_fast16_t = :: std :: os :: raw :: c_long ; pub type int_fast32_t = :: std :: os :: raw :: c_long ; pub type int_fast64_t = :: std :: os :: raw :: c_long ; pub type uint_fast8_t = :: std :: os :: raw :: c_uchar ; pub type uint_fast16_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast32_t = :: std :: os :: raw :: c_ulong ; pub type uint_fast64_t = :: std :: os :: raw :: c_ulong ; pub type intmax_t = __intmax_t ; pub type uintmax_t = __uintmax_t ; pub type avr_irq_notify_t = :: std :: option :: Option < unsafe extern "C" fn (irq : * mut avr_irq_t , value : u32 , param : * mut :: std :: os :: raw :: c_void) > ; # [doc = "!< change polarity of the IRQ"] pub const IRQ_FLAG_NOT : _bindgen_ty_1 = 1 ; # [doc = "!< do not \"notify\" if \"value\" is the same as previous raise"] pub const IRQ_FLAG_FILTERED : _bindgen_ty_1 = 2 ; # [doc = "!< this irq structure was malloced via avr_alloc_irq"] pub const IRQ_FLAG_ALLOC : _bindgen_ty_1 = 4 ; # [doc = "!< this irq hasn't been used yet"] pub const IRQ_FLAG_INIT : _bindgen_ty_1 = 8 ; # [doc = "!< only for notify functions - stop processing hooks after current notify"] pub const IRQ_FLAG_NTF_STOP : _bindgen_ty_1 = 8 ; # [doc = "!< this 'pin'/signal is floating"] pub const IRQ_FLAG_FLOATING : _bindgen_ty_1 = 16 ; # [doc = "!< this 'pin'/signal is held at current state, do not \"notify\""] pub const IRQ_FLAG_STRONG : _bindgen_ty_1 = 32 ; # [doc = "!< Can be used by irq users"] pub const IRQ_FLAG_USER : _bindgen_ty_1 = 64 ; pub type _bindgen_ty_1 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_pool_t { # [doc = "!< number of irqs living in the pool"] pub count : :: std :: os :: raw :: c_int , # [doc = "!< irqs belonging in this pool"] pub irq : * mut * mut avr_irq_t , # [doc = "!< Link back to owner."] pub avr : * mut avr_t , } # [test] fn bindgen_test_layout_avr_irq_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_pool_t) , "::" , stringify ! (avr))) ; } # [doc = " Public IRQ structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_t { pub pool : * mut avr_irq_pool_t , pub name : * const :: std :: os :: raw :: c_char , # [doc = "!< any value the user needs"] pub irq : u32 , # [doc = "!< current value"] pub value : u32 , # [doc = "!< IRQ_* flags"] pub flags : u8 , # [doc = "!< list of hooks to be notified"] pub hook : * mut avr_irq_hook_t , } # [test] fn bindgen_test_layout_avr_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_irq_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_irq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_irq_t) , "::" , stringify ! (hook))) ; } extern "C" { # [doc = "! allocates 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_alloc_irq (pool : * mut avr_irq_pool_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) -> * mut avr_irq_t ; } extern "C" { pub fn avr_free_irq (irq : * mut avr_irq_t , count : u32) ; } extern "C" { # [doc = "! init 'count' IRQs, initializes their \"irq\" starting from 'base' and increment"] pub fn avr_init_irq (pool : * mut avr_irq_pool_t , irq : * mut avr_irq_t , base : u32 , count : u32 , names : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { # [doc = "! Returns the current IRQ flags"] pub fn avr_irq_get_flags (irq : * mut avr_irq_t) -> u8 ; } extern "C" { # [doc = "! Sets this irq's flags"] pub fn avr_irq_set_flags (irq : * mut avr_irq_t , flags : u8) ; } extern "C" { # [doc = "! 'raise' an IRQ. Ie call their 'hooks', and raise any chained IRQs, and set the new 'value'"] pub fn avr_raise_irq (irq : * mut avr_irq_t , value : u32) ; } extern "C" { # [doc = "! Same as avr_raise_irq(), but also allow setting the float status"] pub fn avr_raise_irq_float (irq : * mut avr_irq_t , value : u32 , floating : :: std :: os :: raw :: c_int) ; } extern "C" { # [doc = "! this connects a \"source\" IRQ to a \"destination\" IRQ"] pub fn avr_connect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { pub fn avr_unconnect_irq (src : * mut avr_irq_t , dst : * mut avr_irq_t) ; } extern "C" { # [doc = "! register a notification 'hook' for 'irq' -- 'param' is anything that your want passed back as argument"] pub fn avr_irq_register_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_irq_unregister_notify (irq : * mut avr_irq_t , notify : avr_irq_notify_t , param : * mut :: std :: os :: raw :: c_void) ; } pub type __gwchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct imaxdiv_t { pub quot : :: std :: os :: raw :: c_long , pub rem : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_imaxdiv_t () { const UNINIT : :: std :: mem :: MaybeUninit < imaxdiv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < imaxdiv_t > () , 16usize , concat ! ("Size of: " , stringify ! (imaxdiv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < imaxdiv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (imaxdiv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quot) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (quot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rem) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (imaxdiv_t) , "::" , stringify ! (rem))) ; } extern "C" { pub fn imaxabs (__n : intmax_t) -> intmax_t ; } extern "C" { pub fn imaxdiv (__numer : intmax_t , __denom : intmax_t) -> imaxdiv_t ; } extern "C" { pub fn strtoimax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn strtoumax (__nptr : * const :: std :: os :: raw :: c_char , __endptr : * mut * mut :: std :: os :: raw :: c_char , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } extern "C" { pub fn wcstoimax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> intmax_t ; } extern "C" { pub fn wcstoumax (__nptr : * const __gwchar_t , __endptr : * mut * mut __gwchar_t , __base : :: std :: os :: raw :: c_int) -> uintmax_t ; } pub type avr_cycle_count_t = u64 ; pub type avr_io_addr_t = u16 ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_regbit_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , } # [test] fn bindgen_test_layout_avr_regbit_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_regbit_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_regbit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_regbit_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_regbit_t))) ; } impl avr_regbit_t { # [inline] pub fn reg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 9u8) as u32) } } # [inline] pub fn set_reg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 9u8 , val as u64) } } # [inline] pub fn bit (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 3u8) as u32) } } # [inline] pub fn set_bit (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 3u8 , val as u64) } } # [inline] pub fn mask (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_mask (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg : u32 , bit : u32 , mask : u32) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 9u8 , { let reg : u32 = unsafe { :: std :: mem :: transmute (reg) } ; reg as u64 }) ; __bindgen_bitfield_unit . set (9usize , 3u8 , { let bit : u32 = unsafe { :: std :: mem :: transmute (bit) } ; bit as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let mask : u32 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit } } pub const AVR_INT_IRQ_PENDING : _bindgen_ty_2 = 0 ; pub const AVR_INT_IRQ_RUNNING : _bindgen_ty_2 = 1 ; pub const AVR_INT_IRQ_COUNT : _bindgen_ty_2 = 2 ; pub const AVR_INT_ANY : _bindgen_ty_2 = 255 ; pub type _bindgen_ty_2 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_vector_t { pub vector : u8 , pub enable : avr_regbit_t , pub raised : avr_regbit_t , pub mask : u8 , pub shift : i8 , pub irq : [avr_irq_t ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_avr_int_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_vector_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_int_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . raised) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (raised))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_int_vector_t) , "::" , stringify ! (irq))) ; } impl avr_int_vector_t { # [inline] pub fn pending (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_pending (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn raise_sticky (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_raise_sticky (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (pending : u8 , trace : u8 , raise_sticky : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let pending : u8 = unsafe { :: std :: mem :: transmute (pending) } ; pending as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let raise_sticky : u8 = unsafe { :: std :: mem :: transmute (raise_sticky) } ; raise_sticky as u64 }) ; __bindgen_bitfield_unit } } pub type avr_int_vector_p = * mut avr_int_vector_t ; pub const avr_int_pending_overflow_f : _bindgen_ty_3 = 1 ; pub type _bindgen_ty_3 = :: std :: os :: raw :: c_uint ; pub const avr_int_pending_fifo_size : _bindgen_ty_4 = 64 ; pub type _bindgen_ty_4 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_pending_t { pub buffer : [avr_int_vector_p ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_int_pending_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_pending_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_pending_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_int_pending_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_pending_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_pending_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 514usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (avr_int_pending_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_int_table_t { pub vector : [* mut avr_int_vector_t ; 64usize] , pub vector_count : u8 , pub pending : avr_int_pending_t , pub running_ptr : u8 , pub running : [* mut avr_int_vector_t ; 64usize] , pub irq : [avr_irq_t ; 2usize] , } # [test] fn bindgen_test_layout_avr_int_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_int_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_int_table_t > () , 1640usize , concat ! ("Size of: " , stringify ! (avr_int_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_int_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_int_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_count) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (vector_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_ptr) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (avr_int_table_t) , "::" , stringify ! (irq))) ; } pub type avr_int_table_p = * mut avr_int_table_t ; extern "C" { pub fn avr_register_vector (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_raise_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_has_pending_interrupts (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_is_interrupt_pending (avr : * mut avr_t , vector : * mut avr_int_vector_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_clear_interrupt (avr : * mut avr_t , vector : * mut avr_int_vector_t) ; } extern "C" { pub fn avr_service_interrupts (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reti (avr : * mut avr_t) ; } extern "C" { pub fn avr_clear_interrupt_if (avr : * mut avr_t , vector : * mut avr_int_vector_t , old : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_get_interrupt_irq (avr : * mut avr_t , v : u8) -> * mut avr_irq_t ; } extern "C" { pub fn avr_interrupt_init (avr : * mut avr_t) ; } extern "C" { pub fn avr_interrupt_reset (avr : * mut avr_t) ; } pub type avr_cmd_handler_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_t { pub handler : avr_cmd_handler_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_t) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cmd_table_t { pub table : [avr_cmd_t ; 32usize] , pub pending : * mut avr_cmd_t , } # [test] fn bindgen_test_layout_avr_cmd_table_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cmd_table_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cmd_table_t > () , 520usize , concat ! ("Size of: " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cmd_table_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cmd_table_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pending) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (avr_cmd_table_t) , "::" , stringify ! (pending))) ; } extern "C" { pub fn avr_cmd_set_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_cmd_register (avr : * mut avr_t , code : u8 , handler : avr_cmd_handler_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cmd_unregister (avr : * mut avr_t , code : u8) ; } extern "C" { pub fn avr_cmd_init (avr : * mut avr_t) ; } pub type avr_cycle_timer_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , when : avr_cycle_count_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_slot_t { pub next : * mut avr_cycle_timer_slot_t , pub when : avr_cycle_count_t , pub timer : avr_cycle_timer_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_cycle_timer_slot_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_slot_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_slot_t > () , 32usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_slot_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_slot_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_slot_t) , "::" , stringify ! (param))) ; } pub type avr_cycle_timer_slot_p = * mut avr_cycle_timer_slot_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_cycle_timer_pool_t { pub timer_slots : [avr_cycle_timer_slot_t ; 64usize] , pub timer_free : avr_cycle_timer_slot_p , pub timer : avr_cycle_timer_slot_p , } # [test] fn bindgen_test_layout_avr_cycle_timer_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_cycle_timer_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_cycle_timer_pool_t > () , 2064usize , concat ! ("Size of: " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_cycle_timer_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_cycle_timer_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_slots) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_slots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_free) as usize - ptr as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer_free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (avr_cycle_timer_pool_t) , "::" , stringify ! (timer))) ; } pub type avr_cycle_timer_pool_p = * mut avr_cycle_timer_pool_t ; extern "C" { pub fn avr_cycle_timer_register (avr : * mut avr_t , when : avr_cycle_count_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_register_usec (avr : * mut avr_t , when : u32 , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_cancel (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_cycle_timer_status (avr : * mut avr_t , timer : avr_cycle_timer_t , param : * mut :: std :: os :: raw :: c_void) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_process (avr : * mut avr_t) -> avr_cycle_count_t ; } extern "C" { pub fn avr_cycle_timer_reset (avr : * mut avr_t) ; } pub type avr_flashaddr_t = u32 ; pub type avr_io_read_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , param : * mut :: std :: os :: raw :: c_void) -> u8 > ; pub type avr_io_write_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , addr : avr_io_addr_t , v : u8 , param : * mut :: std :: os :: raw :: c_void) > ; pub type avr_io_write_bit_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , bit : u8 , v : u8 , param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bit_cb { pub c : avr_io_write_bit_t , pub param : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_bit_cb () { const UNINIT : :: std :: mem :: MaybeUninit < bit_cb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < bit_cb > () , 16usize , concat ! ("Size of: " , stringify ! (bit_cb))) ; assert_eq ! (:: std :: mem :: align_of :: < bit_cb > () , 8usize , concat ! ("Alignment of " , stringify ! (bit_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bit_cb) , "::" , stringify ! (param))) ; } pub const S_C : _bindgen_ty_5 = 0 ; pub const S_Z : _bindgen_ty_5 = 1 ; pub const S_N : _bindgen_ty_5 = 2 ; pub const S_V : _bindgen_ty_5 = 3 ; pub const S_S : _bindgen_ty_5 = 4 ; pub const S_H : _bindgen_ty_5 = 5 ; pub const S_T : _bindgen_ty_5 = 6 ; pub const S_I : _bindgen_ty_5 = 7 ; pub const R_XL : _bindgen_ty_5 = 26 ; pub const R_XH : _bindgen_ty_5 = 27 ; pub const R_YL : _bindgen_ty_5 = 28 ; pub const R_YH : _bindgen_ty_5 = 29 ; pub const R_ZL : _bindgen_ty_5 = 30 ; pub const R_ZH : _bindgen_ty_5 = 31 ; pub const R_SPL : _bindgen_ty_5 = 93 ; pub const R_SPH : _bindgen_ty_5 = 94 ; pub const R_SREG : _bindgen_ty_5 = 95 ; pub const MAX_IOs : _bindgen_ty_5 = 280 ; pub type _bindgen_ty_5 = :: std :: os :: raw :: c_uint ; # [doc = " Structure to hold simulator options.\n The current set is kept in avr->options."] # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct simavr_options { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_simavr_options () { assert_eq ! (:: std :: mem :: size_of :: < simavr_options > () , 4usize , concat ! ("Size of: " , stringify ! (simavr_options))) ; assert_eq ! (:: std :: mem :: align_of :: < simavr_options > () , 4usize , concat ! ("Alignment of " , stringify ! (simavr_options))) ; } impl simavr_options { # [inline] pub fn no_pullups (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_no_pullups (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (no_pullups : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let no_pullups : u32 = unsafe { :: std :: mem :: transmute (no_pullups) } ; no_pullups as u64 }) ; __bindgen_bitfield_unit } } pub const LOG_NONE : _bindgen_ty_6 = 0 ; pub const LOG_OUTPUT : _bindgen_ty_6 = 1 ; pub const LOG_ERROR : _bindgen_ty_6 = 2 ; pub const LOG_WARNING : _bindgen_ty_6 = 3 ; pub const LOG_TRACE : _bindgen_ty_6 = 4 ; pub const LOG_DEBUG : _bindgen_ty_6 = 5 ; # [doc = " Logging macros and associated log levels.\n The current log level is kept in avr->log."] pub type _bindgen_ty_6 = :: std :: os :: raw :: c_uint ; pub const AVR_CORE_BAD_OPCODE : _bindgen_ty_7 = 0 ; pub const AVR_CORE_IRQ_COUNT : _bindgen_ty_7 = 1 ; pub type _bindgen_ty_7 = :: std :: os :: raw :: c_uint ; pub const cpu_Limbo : _bindgen_ty_8 = 0 ; pub const cpu_Stopped : _bindgen_ty_8 = 1 ; pub const cpu_Running : _bindgen_ty_8 = 2 ; pub const cpu_Sleeping : _bindgen_ty_8 = 3 ; pub const cpu_Step : _bindgen_ty_8 = 4 ; pub const cpu_StepDone : _bindgen_ty_8 = 5 ; pub const cpu_Done : _bindgen_ty_8 = 6 ; pub const cpu_Crashed : _bindgen_ty_8 = 7 ; pub type _bindgen_ty_8 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t { pub codeline : * mut * const :: std :: os :: raw :: c_char , pub codeline_size : u32 , pub data_names_size : u32 , pub old : [avr_trace_data_t__bindgen_ty_1 ; 32usize] , pub old_pci : :: std :: os :: raw :: c_int , pub touched : [u32 ; 16usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_trace_data_t__bindgen_ty_1 { pub pc : u32 , pub sp : u16 , } # [test] fn bindgen_test_layout_avr_trace_data_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t__bindgen_ty_1) , "::" , stringify ! (sp))) ; } # [test] fn bindgen_test_layout_avr_trace_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_trace_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_trace_data_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_trace_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_trace_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_trace_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeline_size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (codeline_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (data_names_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pci) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (old_pci))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . touched) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (avr_trace_data_t) , "::" , stringify ! (touched))) ; } pub type avr_run_t = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t { pub mmcu : * const :: std :: os :: raw :: c_char , pub ioend : u16 , pub ramend : u16 , pub flashend : u32 , pub e2end : u32 , pub vector_size : u8 , pub resetting : u8 , pub fuse : [u8 ; 6usize] , pub lockbits : u8 , pub signature : [u8 ; 3usize] , pub serial : [u8 ; 9usize] , pub rampz : avr_io_addr_t , pub eind : avr_io_addr_t , pub address_size : u8 , pub reset_flags : avr_t__bindgen_ty_1 , pub codeend : u32 , pub state : :: std :: os :: raw :: c_int , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub cycle : avr_cycle_count_t , pub run_cycle_count : avr_cycle_count_t , pub run_cycle_limit : avr_cycle_count_t , # [doc = " Sleep requests are accumulated in sleep_usec until the minimum sleep value\n is reached, at which point sleep_usec is cleared and the sleep request\n is passed on to the operating system."] pub sleep_usec : u32 , pub time_base : u64 , pub options : simavr_options , pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub reset : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t) > , pub custom : avr_t__bindgen_ty_2 , # [doc = " Default AVR core run function.\n Two modes are available, a \"raw\" run that goes as fast as\n it can, and a \"gdb\" mode that also watchouts for gdb events\n and is a little bit slower."] pub run : avr_run_t , # [doc = " Sleep default behaviour.\n In \"raw\" mode, it calls usleep, in gdb mode, it waits\n for howLong for gdb command on it's sockets."] pub sleep : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , howLong : avr_cycle_count_t) > , # [doc = " Every IRQs will be stored in this pool. It is not\n mandatory (yet) but will allow listing IRQs and their connections"] pub irq_pool : avr_irq_pool_t , pub sreg : [u8 ; 8usize] , pub interrupt_state : i8 , pub pc : avr_flashaddr_t , pub reset_pc : avr_flashaddr_t , pub bit_io : [bit_cb ; 32usize] , pub io : [avr_t__bindgen_ty_3 ; 280usize] , pub io_shared_io_count : :: std :: os :: raw :: c_int , pub io_shared_io : [avr_t__bindgen_ty_4 ; 4usize] , pub sram_tracepoint_count : :: std :: os :: raw :: c_int , pub sram_tracepoint : [avr_t__bindgen_ty_5 ; 16usize] , pub flash : * mut u8 , pub data : * mut u8 , pub io_port : * mut avr_io_t , pub irq : * mut avr_irq_t , pub commands : avr_cmd_table_t , pub cycle_timers : avr_cycle_timer_pool_t , pub interrupts : avr_int_table_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub trace_data : * mut avr_trace_data_t , pub vcd : * mut avr_vcd_t , pub gdb : * mut avr_gdb_t , pub gdb_port : :: std :: os :: raw :: c_int , pub io_console_buffer : avr_t__bindgen_ty_6 , pub data_names : * mut * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_1 { pub porf : avr_regbit_t , pub extrf : avr_regbit_t , pub borf : avr_regbit_t , pub wdrf : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . porf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (porf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extrf) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (extrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . borf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (borf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_1) , "::" , stringify ! (wdrf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_2 { pub init : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub deinit : :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , data : * mut :: std :: os :: raw :: c_void) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . deinit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (deinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_2) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3 { pub irq : * mut avr_irq_t , pub r : avr_t__bindgen_ty_3__bindgen_ty_1 , pub w : avr_t__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_read_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_3__bindgen_ty_2 { pub param : * mut :: std :: os :: raw :: c_void , pub c : avr_io_write_t , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_3) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4 { pub used : :: std :: os :: raw :: c_int , pub io : [avr_t__bindgen_ty_4__bindgen_ty_1 ; 4usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_4__bindgen_ty_1 { pub param : * mut :: std :: os :: raw :: c_void , pub c : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . param) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (c))) ; } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_4 > () , 72usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_4) , "::" , stringify ! (io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_5 { pub irq : * mut avr_irq_t , pub width : :: std :: os :: raw :: c_int , pub addr : u16 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_5 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_5 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_5) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_t__bindgen_ty_6 { pub buf : * mut :: std :: os :: raw :: c_char , pub size : u32 , pub len : u32 , } # [test] fn bindgen_test_layout_avr_t__bindgen_ty_6 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t__bindgen_ty_6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t__bindgen_ty_6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t__bindgen_ty_6) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_avr_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_t > () , 16832usize , concat ! ("Size of: " , stringify ! (avr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioend) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ioend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ramend) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (ramend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashend) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flashend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . e2end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (e2end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vector_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetting) as usize - ptr as usize } , 21usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (resetting))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fuse) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (fuse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lockbits) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (lockbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serial) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rampz) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (rampz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eind) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (eind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codeend) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (codeend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_count) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_cycle_limit) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run_cycle_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep_usec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep_usec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time_base) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (time_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (custom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_pool) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq_pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sreg) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt_state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupt_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset_pc) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (reset_pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit_io) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (bit_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io_count) as usize - ptr as usize } , 11952usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_shared_io) as usize - ptr as usize } , 11960usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_shared_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint_count) as usize - ptr as usize } , 12248usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sram_tracepoint) as usize - ptr as usize } , 12256usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (sram_tracepoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 12512usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (flash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 12520usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_port) as usize - ptr as usize } , 12528usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 12536usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commands) as usize - ptr as usize } , 12544usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (commands))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_timers) as usize - ptr as usize } , 13064usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (cycle_timers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 15128usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_data) as usize - ptr as usize } , 16776usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (trace_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd) as usize - ptr as usize } , 16784usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (vcd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb) as usize - ptr as usize } , 16792usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdb_port) as usize - ptr as usize } , 16800usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (gdb_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_console_buffer) as usize - ptr as usize } , 16808usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (io_console_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_names) as usize - ptr as usize } , 16824usize , concat ! ("Offset of field: " , stringify ! (avr_t) , "::" , stringify ! (data_names))) ; } impl avr_t { # [inline] pub fn trace (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_trace (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn log (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 4u8) as u8) } } # [inline] pub fn set_log (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (trace : u8 , log : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let trace : u8 = unsafe { :: std :: mem :: transmute (trace) } ; trace as u64 }) ; __bindgen_bitfield_unit . set (1usize , 4u8 , { let log : u8 = unsafe { :: std :: mem :: transmute (log) } ; log as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_kind_t { pub names : [* const :: std :: os :: raw :: c_char ; 4usize] , pub make : :: std :: option :: Option < unsafe extern "C" fn () -> * mut avr_t > , } # [test] fn bindgen_test_layout_avr_kind_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_kind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_kind_t > () , 40usize , concat ! ("Size of: " , stringify ! (avr_kind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_kind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_kind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . make) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_kind_t) , "::" , stringify ! (make))) ; } # [repr (C)] # [derive (Debug)] pub struct avr_symbol_t { pub addr : u32 , pub size : u32 , pub symbol : __IncompleteArrayField < :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_avr_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_symbol_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_symbol_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_symbol_t) , "::" , stringify ! (symbol))) ; } extern "C" { pub fn avr_make_mcu_by_name (name : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_core_allocate (core : * const avr_t , coreLen : u32) -> * mut avr_t ; } extern "C" { pub fn avr_reset (avr : * mut avr_t) ; } extern "C" { pub fn avr_get_core_irq (avr : * mut avr_t , irq_no : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_get_memory_irq (avr : * mut avr_t , addr : u16 , is16 : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_run (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_terminate (avr : * mut avr_t) ; } extern "C" { pub fn avr_set_command_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_set_console_register (avr : * mut avr_t , addr : avr_io_addr_t) ; } extern "C" { pub fn avr_loadcode (avr : * mut avr_t , code : * mut u8 , size : u32 , address : avr_flashaddr_t) ; } extern "C" { pub fn avr_core_watch_write (avr : * mut avr_t , addr : u16 , v : u8) ; } extern "C" { pub fn avr_core_watch_read (avr : * mut avr_t , addr : u16) -> u8 ; } extern "C" { pub fn avr_sadly_crashed (avr : * mut avr_t , signal : u8) ; } extern "C" { pub fn avr_global_logger (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ...) ; } pub type __gnuc_va_list = __builtin_va_list ; pub type va_list = __builtin_va_list ; pub type avr_logger_p = :: std :: option :: Option < unsafe extern "C" fn (avr : * mut avr_t , level : :: std :: os :: raw :: c_int , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) > ; extern "C" { pub fn avr_global_logger_set (logger : avr_logger_p) ; } extern "C" { pub fn avr_global_logger_get () -> avr_logger_p ; } extern "C" { pub fn avr_callback_sleep_gdb (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_callback_sleep_raw (avr : * mut avr_t , howLong : avr_cycle_count_t) ; } extern "C" { pub fn avr_callback_run_raw (avr : * mut avr_t) ; } extern "C" { # [doc = " Accumulates sleep requests (and returns a sleep time of 0) until\n a minimum count of requested sleep microseconds are reached\n (low amounts cannot be handled accurately).\n This function is an utility function for the sleep callbacks"] pub fn avr_pending_sleep_usec (avr : * mut avr_t , howLong : avr_cycle_count_t) -> u32 ; } extern "C" { pub fn avr_get_time_stamp (avr : * mut avr_t) -> u64 ; } extern "C" { pub fn avr_where (avr : * mut avr_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_t { pub next : * mut avr_io_t , pub avr : * mut avr_t , pub kind : * const :: std :: os :: raw :: c_char , pub irq_names : * mut * const :: std :: os :: raw :: c_char , pub irq_ioctl_get : u32 , pub irq_count : :: std :: os :: raw :: c_int , pub irq : * mut avr_irq_t , pub reset : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , pub ioctl : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub dealloc : :: std :: option :: Option < unsafe extern "C" fn (io : * mut avr_io_t) > , } # [test] fn bindgen_test_layout_avr_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_names) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_names))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_ioctl_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_ioctl_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq_count) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ioctl) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dealloc) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_io_t) , "::" , stringify ! (dealloc))) ; } extern "C" { pub fn avr_register_io (avr : * mut avr_t , io : * mut avr_io_t) ; } extern "C" { pub fn avr_io_setirqs (io : * mut avr_io_t , ctl : u32 , count : :: std :: os :: raw :: c_int , irqs : * mut avr_irq_t) -> * mut avr_irq_t ; } extern "C" { pub fn avr_register_io_read (avr : * mut avr_t , addr : avr_io_addr_t , read : avr_io_read_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_write (avr : * mut avr_t , addr : avr_io_addr_t , write : avr_io_write_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_register_single_io_bit_write (avr : * mut avr_t , addr : avr_io_addr_t , bit : u8 , writep : avr_io_write_bit_t , param : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn avr_ioctl (avr : * mut avr_t , ctl : u32 , io_param : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_io_getirq (avr : * mut avr_t , ctl : u32 , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_iomem_getirq (avr : * mut avr_t , addr : avr_io_addr_t , name : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int) -> * mut avr_irq_t ; } extern "C" { pub fn avr_deallocate_ios (avr : * mut avr_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [test] fn bindgen_test_layout_iovec () { const UNINIT : :: std :: mem :: MaybeUninit < iovec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: std :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iov_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type time_t = __time_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = __uint8_t ; pub type u_int16_t = __uint16_t ; pub type u_int32_t = __uint32_t ; pub type u_int64_t = __uint64_t ; pub type register_t = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { 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 , 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 (Debug , Copy , Clone)] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [test] fn bindgen_test_layout_timespec () { const UNINIT : :: std :: mem :: MaybeUninit < timespec > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timespec > () , 16usize , concat ! ("Size of: " , stringify ! (timespec))) ; assert_eq ! (:: std :: mem :: align_of :: < timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_nsec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec) , "::" , stringify ! (tv_nsec))) ; } pub type suseconds_t = __suseconds_t ; pub type __fd_mask = :: std :: os :: raw :: c_long ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fd_set { pub __fds_bits : [__fd_mask ; 16usize] , } # [test] fn bindgen_test_layout_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fd_set) , "::" , stringify ! (__fds_bits))) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect (__nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t) -> :: std :: os :: raw :: c_int ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [repr (C)] # [derive (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 , 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))) ; } # [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))) ; } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_slist { pub __next : * mut __pthread_internal_slist , } # [test] fn bindgen_test_layout___pthread_internal_slist () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_slist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Size of: " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_internal_slist > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_internal_slist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_slist) , "::" , stringify ! (__next))) ; } pub type __pthread_slist_t = __pthread_internal_slist ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __pad1 : :: std :: os :: raw :: c_ulong , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_rwlock_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_rwlock_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __pthread_rwlock_arch_t > () , 56usize , concat ! ("Size of: " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __pthread_rwlock_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (__pthread_rwlock_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __readers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__readers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrphase_futex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__wrphase_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __writers_futex) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__writers_futex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad3) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad4) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cur_writer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__cur_writer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __shared) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad1) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pad2) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__pad2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (__pthread_rwlock_arch_t) , "::" , stringify ! (__flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __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))) ; } pub type __tss_t = :: std :: os :: raw :: c_uint ; pub type __thrd_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __once_flag { pub __data : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout___once_flag () { const UNINIT : :: std :: mem :: MaybeUninit < __once_flag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __once_flag > () , 4usize , concat ! ("Size of: " , stringify ! (__once_flag))) ; assert_eq ! (:: std :: mem :: align_of :: < __once_flag > () , 4usize , concat ! ("Alignment of " , stringify ! (__once_flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__once_flag) , "::" , stringify ! (__data))) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutexattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_mutexattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutexattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutexattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_mutexattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutexattr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_condattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_condattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_condattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_condattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_condattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_condattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_condattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_condattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_attr_t { pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_attr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_attr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_attr_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_attr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_attr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_attr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_attr_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [:: std :: os :: raw :: c_char ; 40usize] , pub __align : :: std :: os :: raw :: c_long , } # [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))) ; } # [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))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [:: std :: os :: raw :: c_char ; 56usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlock_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlock_t > () , 56usize , concat ! ("Size of: " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlock_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_rwlockattr_t { pub __size : [:: std :: os :: raw :: c_char ; 8usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_rwlockattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_rwlockattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Size of: " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_rwlockattr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_rwlockattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_rwlockattr_t) , "::" , stringify ! (__align))) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrier_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_pthread_barrier_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrier_t > () , 32usize , concat ! ("Size of: " , stringify ! (pthread_barrier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_barrier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrier_t) , "::" , stringify ! (__align))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_barrierattr_t { pub __size : [:: std :: os :: raw :: c_char ; 4usize] , pub __align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_pthread_barrierattr_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_barrierattr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Size of: " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_barrierattr_t > () , 4usize , concat ! ("Alignment of " , stringify ! (pthread_barrierattr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_barrierattr_t) , "::" , stringify ! (__align))) ; } pub type socklen_t = __socklen_t ; pub const __socket_type_SOCK_STREAM : __socket_type = 1 ; pub const __socket_type_SOCK_DGRAM : __socket_type = 2 ; pub const __socket_type_SOCK_RAW : __socket_type = 3 ; pub const __socket_type_SOCK_RDM : __socket_type = 4 ; pub const __socket_type_SOCK_SEQPACKET : __socket_type = 5 ; pub const __socket_type_SOCK_DCCP : __socket_type = 6 ; pub const __socket_type_SOCK_PACKET : __socket_type = 10 ; pub const __socket_type_SOCK_CLOEXEC : __socket_type = 524288 ; pub const __socket_type_SOCK_NONBLOCK : __socket_type = 2048 ; pub type __socket_type = :: std :: os :: raw :: c_uint ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [test] fn bindgen_test_layout_sockaddr_storage () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_storage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (sockaddr_storage))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (sockaddr_storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ss_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_padding) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_padding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ss_align) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sockaddr_storage) , "::" , stringify ! (__ss_align))) ; } pub const MSG_OOB : _bindgen_ty_9 = 1 ; pub const MSG_PEEK : _bindgen_ty_9 = 2 ; pub const MSG_DONTROUTE : _bindgen_ty_9 = 4 ; pub const MSG_CTRUNC : _bindgen_ty_9 = 8 ; pub const MSG_PROXY : _bindgen_ty_9 = 16 ; pub const MSG_TRUNC : _bindgen_ty_9 = 32 ; pub const MSG_DONTWAIT : _bindgen_ty_9 = 64 ; pub const MSG_EOR : _bindgen_ty_9 = 128 ; pub const MSG_WAITALL : _bindgen_ty_9 = 256 ; pub const MSG_FIN : _bindgen_ty_9 = 512 ; pub const MSG_SYN : _bindgen_ty_9 = 1024 ; pub const MSG_CONFIRM : _bindgen_ty_9 = 2048 ; pub const MSG_RST : _bindgen_ty_9 = 4096 ; pub const MSG_ERRQUEUE : _bindgen_ty_9 = 8192 ; pub const MSG_NOSIGNAL : _bindgen_ty_9 = 16384 ; pub const MSG_MORE : _bindgen_ty_9 = 32768 ; pub const MSG_WAITFORONE : _bindgen_ty_9 = 65536 ; pub const MSG_BATCH : _bindgen_ty_9 = 262144 ; pub const MSG_SOCK_DEVMEM : _bindgen_ty_9 = 33554432 ; pub const MSG_ZEROCOPY : _bindgen_ty_9 = 67108864 ; pub const MSG_FASTOPEN : _bindgen_ty_9 = 536870912 ; pub const MSG_CMSG_CLOEXEC : _bindgen_ty_9 = 1073741824 ; pub type _bindgen_ty_9 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: std :: os :: raw :: c_void , pub msg_namelen : socklen_t , pub msg_iov : * mut iovec , pub msg_iovlen : usize , pub msg_control : * mut :: std :: os :: raw :: c_void , pub msg_controllen : usize , pub msg_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_msghdr () { const UNINIT : :: std :: mem :: MaybeUninit < msghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < msghdr > () , 56usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_namelen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iov) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_iovlen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iovlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; } # [repr (C)] # [derive (Debug)] pub struct cmsghdr { pub cmsg_len : usize , pub cmsg_level : :: std :: os :: raw :: c_int , pub cmsg_type : :: std :: os :: raw :: c_int , pub __cmsg_data : __IncompleteArrayField < :: std :: os :: raw :: c_uchar > , } # [test] fn bindgen_test_layout_cmsghdr () { const UNINIT : :: std :: mem :: MaybeUninit < cmsghdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (cmsghdr))) ; assert_eq ! (:: std :: mem :: align_of :: < cmsghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (cmsghdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmsg_type) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (cmsg_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __cmsg_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cmsghdr) , "::" , stringify ! (__cmsg_data))) ; } extern "C" { pub fn __cmsg_nxthdr (__mhdr : * mut msghdr , __cmsg : * mut cmsghdr) -> * mut cmsghdr ; } pub const SCM_RIGHTS : _bindgen_ty_10 = 1 ; pub type _bindgen_ty_10 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fd_set { pub fds_bits : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___kernel_fd_set () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fd_set > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fd_set > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_fd_set))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fd_set > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_fd_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fd_set) , "::" , stringify ! (fds_bits))) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: std :: os :: raw :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { const UNINIT : :: std :: mem :: MaybeUninit < __kernel_fsid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_uoff_t = :: std :: os :: raw :: c_ulonglong ; pub type __kernel_old_time_t = __kernel_long_t ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_time64_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linger { pub l_onoff : :: std :: os :: raw :: c_int , pub l_linger : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_linger () { const UNINIT : :: std :: mem :: MaybeUninit < linger > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < linger > () , 8usize , concat ! ("Size of: " , stringify ! (linger))) ; assert_eq ! (:: std :: mem :: align_of :: < linger > () , 4usize , concat ! ("Alignment of " , stringify ! (linger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_onoff) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_onoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_linger) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (linger) , "::" , stringify ! (l_linger))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct osockaddr { pub sa_family : :: std :: os :: raw :: c_ushort , pub sa_data : [:: std :: os :: raw :: c_uchar ; 14usize] , } # [test] fn bindgen_test_layout_osockaddr () { const UNINIT : :: std :: mem :: MaybeUninit < osockaddr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < osockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (osockaddr))) ; assert_eq ! (:: std :: mem :: align_of :: < osockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (osockaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa_data) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (osockaddr) , "::" , stringify ! (sa_data))) ; } pub const SHUT_RD : _bindgen_ty_11 = 0 ; pub const SHUT_WR : _bindgen_ty_11 = 1 ; pub const SHUT_RDWR : _bindgen_ty_11 = 2 ; pub type _bindgen_ty_11 = :: std :: os :: raw :: c_uint ; extern "C" { pub fn socket (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn socketpair (__domain : :: std :: os :: raw :: c_int , __type : :: std :: os :: raw :: c_int , __protocol : :: std :: os :: raw :: c_int , __fds : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bind (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getsockname (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn connect (__fd : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __len : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getpeername (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn send (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recv (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn sendto (__fd : :: std :: os :: raw :: c_int , __buf : * const :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * const sockaddr , __addr_len : socklen_t) -> isize ; } extern "C" { pub fn recvfrom (__fd : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_void , __n : usize , __flags : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> isize ; } extern "C" { pub fn sendmsg (__fd : :: std :: os :: raw :: c_int , __message : * const msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn recvmsg (__fd : :: std :: os :: raw :: c_int , __message : * mut msghdr , __flags : :: std :: os :: raw :: c_int) -> isize ; } extern "C" { pub fn getsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * mut :: std :: os :: raw :: c_void , __optlen : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setsockopt (__fd : :: std :: os :: raw :: c_int , __level : :: std :: os :: raw :: c_int , __optname : :: std :: os :: raw :: c_int , __optval : * const :: std :: os :: raw :: c_void , __optlen : socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn listen (__fd : :: std :: os :: raw :: c_int , __n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn accept (__fd : :: std :: os :: raw :: c_int , __addr : * mut sockaddr , __addr_len : * mut socklen_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn shutdown (__fd : :: std :: os :: raw :: c_int , __how : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sockatmark (__fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn isfdtype (__fd : :: std :: os :: raw :: c_int , __fdtype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_opts { pub ip_dst : in_addr , pub ip_opts : [:: std :: os :: raw :: c_char ; 40usize] , } # [test] fn bindgen_test_layout_ip_opts () { const UNINIT : :: std :: mem :: MaybeUninit < ip_opts > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_opts > () , 44usize , concat ! ("Size of: " , stringify ! (ip_opts))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_opts > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_opts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_dst) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ip_opts) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_opts) , "::" , stringify ! (ip_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct in_pktinfo { pub ipi_ifindex : :: std :: os :: raw :: c_int , pub ipi_spec_dst : in_addr , pub ipi_addr : in_addr , } # [test] fn bindgen_test_layout_in_pktinfo () { const UNINIT : :: std :: mem :: MaybeUninit < in_pktinfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_pktinfo > () , 12usize , concat ! ("Size of: " , stringify ! (in_pktinfo))) ; assert_eq ! (:: std :: mem :: align_of :: < in_pktinfo > () , 4usize , concat ! ("Alignment of " , stringify ! (in_pktinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_ifindex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_spec_dst) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_spec_dst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipi_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (in_pktinfo) , "::" , stringify ! (ipi_addr))) ; } pub const IPPROTO_IP : _bindgen_ty_12 = 0 ; pub const IPPROTO_ICMP : _bindgen_ty_12 = 1 ; pub const IPPROTO_IGMP : _bindgen_ty_12 = 2 ; pub const IPPROTO_IPIP : _bindgen_ty_12 = 4 ; pub const IPPROTO_TCP : _bindgen_ty_12 = 6 ; pub const IPPROTO_EGP : _bindgen_ty_12 = 8 ; pub const IPPROTO_PUP : _bindgen_ty_12 = 12 ; pub const IPPROTO_UDP : _bindgen_ty_12 = 17 ; pub const IPPROTO_IDP : _bindgen_ty_12 = 22 ; pub const IPPROTO_TP : _bindgen_ty_12 = 29 ; pub const IPPROTO_DCCP : _bindgen_ty_12 = 33 ; pub const IPPROTO_IPV6 : _bindgen_ty_12 = 41 ; pub const IPPROTO_RSVP : _bindgen_ty_12 = 46 ; pub const IPPROTO_GRE : _bindgen_ty_12 = 47 ; pub const IPPROTO_ESP : _bindgen_ty_12 = 50 ; pub const IPPROTO_AH : _bindgen_ty_12 = 51 ; pub const IPPROTO_MTP : _bindgen_ty_12 = 92 ; pub const IPPROTO_BEETPH : _bindgen_ty_12 = 94 ; pub const IPPROTO_ENCAP : _bindgen_ty_12 = 98 ; pub const IPPROTO_PIM : _bindgen_ty_12 = 103 ; pub const IPPROTO_COMP : _bindgen_ty_12 = 108 ; pub const IPPROTO_L2TP : _bindgen_ty_12 = 115 ; pub const IPPROTO_SCTP : _bindgen_ty_12 = 132 ; pub const IPPROTO_UDPLITE : _bindgen_ty_12 = 136 ; pub const IPPROTO_MPLS : _bindgen_ty_12 = 137 ; pub const IPPROTO_ETHERNET : _bindgen_ty_12 = 143 ; pub const IPPROTO_RAW : _bindgen_ty_12 = 255 ; pub const IPPROTO_SMC : _bindgen_ty_12 = 256 ; pub const IPPROTO_MPTCP : _bindgen_ty_12 = 262 ; pub const IPPROTO_MAX : _bindgen_ty_12 = 263 ; pub type _bindgen_ty_12 = :: std :: os :: raw :: c_uint ; pub const IPPROTO_HOPOPTS : _bindgen_ty_13 = 0 ; pub const IPPROTO_ROUTING : _bindgen_ty_13 = 43 ; pub const IPPROTO_FRAGMENT : _bindgen_ty_13 = 44 ; pub const IPPROTO_ICMPV6 : _bindgen_ty_13 = 58 ; pub const IPPROTO_NONE : _bindgen_ty_13 = 59 ; pub const IPPROTO_DSTOPTS : _bindgen_ty_13 = 60 ; pub const IPPROTO_MH : _bindgen_ty_13 = 135 ; pub type _bindgen_ty_13 = :: std :: os :: raw :: c_uint ; pub type in_port_t = u16 ; pub const IPPORT_ECHO : _bindgen_ty_14 = 7 ; pub const IPPORT_DISCARD : _bindgen_ty_14 = 9 ; pub const IPPORT_SYSTAT : _bindgen_ty_14 = 11 ; pub const IPPORT_DAYTIME : _bindgen_ty_14 = 13 ; pub const IPPORT_NETSTAT : _bindgen_ty_14 = 15 ; pub const IPPORT_FTP : _bindgen_ty_14 = 21 ; pub const IPPORT_TELNET : _bindgen_ty_14 = 23 ; pub const IPPORT_SMTP : _bindgen_ty_14 = 25 ; pub const IPPORT_TIMESERVER : _bindgen_ty_14 = 37 ; pub const IPPORT_NAMESERVER : _bindgen_ty_14 = 42 ; pub const IPPORT_WHOIS : _bindgen_ty_14 = 43 ; pub const IPPORT_MTP : _bindgen_ty_14 = 57 ; pub const IPPORT_TFTP : _bindgen_ty_14 = 69 ; pub const IPPORT_RJE : _bindgen_ty_14 = 77 ; pub const IPPORT_FINGER : _bindgen_ty_14 = 79 ; pub const IPPORT_TTYLINK : _bindgen_ty_14 = 87 ; pub const IPPORT_SUPDUP : _bindgen_ty_14 = 95 ; pub const IPPORT_EXECSERVER : _bindgen_ty_14 = 512 ; pub const IPPORT_LOGINSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_CMDSERVER : _bindgen_ty_14 = 514 ; pub const IPPORT_EFSSERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_BIFFUDP : _bindgen_ty_14 = 512 ; pub const IPPORT_WHOSERVER : _bindgen_ty_14 = 513 ; pub const IPPORT_ROUTESERVER : _bindgen_ty_14 = 520 ; pub const IPPORT_RESERVED : _bindgen_ty_14 = 1024 ; pub const IPPORT_USERRESERVED : _bindgen_ty_14 = 5000 ; pub type _bindgen_ty_14 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub __in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub __u6_addr8 : [u8 ; 16usize] , pub __u6_addr16 : [u16 ; 8usize] , pub __u6_addr32 : [u32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr8) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr16) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr16))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __u6_addr32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (__u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in6_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __in6_u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (__in6_u))) ; } extern "C" { pub static in6addr_any : in6_addr ; } extern "C" { pub static in6addr_loopback : in6_addr ; } # [repr (C)] # [derive (Debug , 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 (Copy , Clone)] pub struct sockaddr_in6 { pub sin6_family : sa_family_t , pub sin6_port : in_port_t , pub sin6_flowinfo : u32 , pub sin6_addr : in6_addr , pub sin6_scope_id : u32 , } # [test] fn bindgen_test_layout_sockaddr_in6 () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in6 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in6 > () , 28usize , concat ! ("Size of: " , stringify ! (sockaddr_in6))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in6))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_flowinfo) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_flowinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin6_scope_id) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in6) , "::" , stringify ! (sin6_scope_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , } # [test] fn bindgen_test_layout_ip_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq > () , 8usize , concat ! ("Size of: " , stringify ! (ip_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq) , "::" , stringify ! (imr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreqn { pub imr_multiaddr : in_addr , pub imr_address : in_addr , pub imr_ifindex : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_ip_mreqn () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreqn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreqn > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreqn))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreqn > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreqn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_address) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_ifindex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreqn) , "::" , stringify ! (imr_ifindex))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_mreq_source { pub imr_multiaddr : in_addr , pub imr_interface : in_addr , pub imr_sourceaddr : in_addr , } # [test] fn bindgen_test_layout_ip_mreq_source () { const UNINIT : :: std :: mem :: MaybeUninit < ip_mreq_source > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_mreq_source > () , 12usize , concat ! ("Size of: " , stringify ! (ip_mreq_source))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_mreq_source > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_mreq_source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imr_sourceaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_mreq_source) , "::" , stringify ! (imr_sourceaddr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_mreq { pub ipv6mr_multiaddr : in6_addr , pub ipv6mr_interface : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_ipv6_mreq () { const UNINIT : :: std :: mem :: MaybeUninit < ipv6_mreq > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ipv6_mreq > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_mreq))) ; assert_eq ! (:: std :: mem :: align_of :: < ipv6_mreq > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_mreq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipv6mr_interface) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_mreq) , "::" , stringify ! (ipv6mr_interface))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_req { pub gr_interface : u32 , pub gr_group : sockaddr_storage , } # [test] fn bindgen_test_layout_group_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_req > () , 136usize , concat ! ("Size of: " , stringify ! (group_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_req) , "::" , stringify ! (gr_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_source_req { pub gsr_interface : u32 , pub gsr_group : sockaddr_storage , pub gsr_source : sockaddr_storage , } # [test] fn bindgen_test_layout_group_source_req () { const UNINIT : :: std :: mem :: MaybeUninit < group_source_req > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_source_req > () , 264usize , concat ! ("Size of: " , stringify ! (group_source_req))) ; assert_eq ! (:: std :: mem :: align_of :: < group_source_req > () , 8usize , concat ! ("Alignment of " , stringify ! (group_source_req))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gsr_source) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_source_req) , "::" , stringify ! (gsr_source))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_msfilter { pub imsf_multiaddr : in_addr , pub imsf_interface : in_addr , pub imsf_fmode : u32 , pub imsf_numsrc : u32 , pub imsf_slist : [in_addr ; 1usize] , } # [test] fn bindgen_test_layout_ip_msfilter () { const UNINIT : :: std :: mem :: MaybeUninit < ip_msfilter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ip_msfilter > () , 20usize , concat ! ("Size of: " , stringify ! (ip_msfilter))) ; assert_eq ! (:: std :: mem :: align_of :: < ip_msfilter > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_msfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_multiaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_multiaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_interface) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_fmode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_numsrc) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imsf_slist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_msfilter) , "::" , stringify ! (imsf_slist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct group_filter { pub gf_interface : u32 , pub gf_group : sockaddr_storage , pub gf_fmode : u32 , pub gf_numsrc : u32 , pub gf_slist : [sockaddr_storage ; 1usize] , } # [test] fn bindgen_test_layout_group_filter () { const UNINIT : :: std :: mem :: MaybeUninit < group_filter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < group_filter > () , 272usize , concat ! ("Size of: " , stringify ! (group_filter))) ; assert_eq ! (:: std :: mem :: align_of :: < group_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (group_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_interface) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_interface))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_group) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_group))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_fmode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_fmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_numsrc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_numsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gf_slist) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (group_filter) , "::" , stringify ! (gf_slist))) ; } extern "C" { pub fn ntohl (__netlong : u32) -> u32 ; } extern "C" { pub fn ntohs (__netshort : u16) -> u16 ; } extern "C" { pub fn htonl (__hostlong : u32) -> u32 ; } extern "C" { pub fn htons (__hostshort : u16) -> u16 ; } extern "C" { pub fn bindresvport (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn bindresvport6 (__sockfd : :: std :: os :: raw :: c_int , __sock_in : * mut sockaddr_in6) -> :: std :: os :: raw :: c_int ; } pub type tcp_seq = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct tcphdr { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcphdr__bindgen_ty_1 { pub __bindgen_anon_1 : tcphdr__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : tcphdr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_1 { pub th_sport : u16 , pub th_dport : u16 , pub th_seq : tcp_seq , pub th_ack : tcp_seq , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub th_flags : u8 , pub th_win : u16 , pub th_sum : u16 , pub th_urp : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sport) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_dport) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_dport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_ack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_ack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_flags) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_win) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_win))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_sum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . th_urp) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (th_urp))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn th_x2 (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_th_x2 (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn th_off (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_th_off (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (th_x2 : u8 , th_off : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let th_x2 : u8 = unsafe { :: std :: mem :: transmute (th_x2) } ; th_x2 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let th_off : u8 = unsafe { :: std :: mem :: transmute (th_off) } ; th_off as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcphdr__bindgen_ty_1__bindgen_ty_2 { pub source : u16 , pub dest : u16 , pub seq : u32 , pub ack_seq : u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub window : u16 , pub check : u16 , pub urg_ptr : u16 , } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < tcphdr__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dest) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seq) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ack_seq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ack_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . window) as usize - ptr as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . urg_ptr) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (tcphdr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (urg_ptr))) ; } impl tcphdr__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn res1 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u16) } } # [inline] pub fn set_res1 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn doff (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u16) } } # [inline] pub fn set_doff (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn fin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_fin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn syn (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_syn (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn rst (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_rst (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn psh (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u16) } } # [inline] pub fn set_psh (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn ack (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_ack (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn urg (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u16) } } # [inline] pub fn set_urg (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn res2 (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (14usize , 2u8) as u16) } } # [inline] pub fn set_res2 (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (res1 : u16 , doff : u16 , fin : u16 , syn : u16 , rst : u16 , psh : u16 , ack : u16 , urg : u16 , res2 : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let res1 : u16 = unsafe { :: std :: mem :: transmute (res1) } ; res1 as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let doff : u16 = unsafe { :: std :: mem :: transmute (doff) } ; doff as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let fin : u16 = unsafe { :: std :: mem :: transmute (fin) } ; fin as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let syn : u16 = unsafe { :: std :: mem :: transmute (syn) } ; syn as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let rst : u16 = unsafe { :: std :: mem :: transmute (rst) } ; rst as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let psh : u16 = unsafe { :: std :: mem :: transmute (psh) } ; psh as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let ack : u16 = unsafe { :: std :: mem :: transmute (ack) } ; ack as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let urg : u16 = unsafe { :: std :: mem :: transmute (urg) } ; urg as u64 }) ; __bindgen_bitfield_unit . set (14usize , 2u8 , { let res2 : u16 = unsafe { :: std :: mem :: transmute (res2) } ; res2 as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_tcphdr__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_tcphdr () { assert_eq ! (:: std :: mem :: size_of :: < tcphdr > () , 20usize , concat ! ("Size of: " , stringify ! (tcphdr))) ; assert_eq ! (:: std :: mem :: align_of :: < tcphdr > () , 4usize , concat ! ("Alignment of " , stringify ! (tcphdr))) ; } pub const TCP_ESTABLISHED : _bindgen_ty_15 = 1 ; pub const TCP_SYN_SENT : _bindgen_ty_15 = 2 ; pub const TCP_SYN_RECV : _bindgen_ty_15 = 3 ; pub const TCP_FIN_WAIT1 : _bindgen_ty_15 = 4 ; pub const TCP_FIN_WAIT2 : _bindgen_ty_15 = 5 ; pub const TCP_TIME_WAIT : _bindgen_ty_15 = 6 ; pub const TCP_CLOSE : _bindgen_ty_15 = 7 ; pub const TCP_CLOSE_WAIT : _bindgen_ty_15 = 8 ; pub const TCP_LAST_ACK : _bindgen_ty_15 = 9 ; pub const TCP_LISTEN : _bindgen_ty_15 = 10 ; pub const TCP_CLOSING : _bindgen_ty_15 = 11 ; pub type _bindgen_ty_15 = :: std :: os :: raw :: c_uint ; pub const tcp_ca_state_TCP_CA_Open : tcp_ca_state = 0 ; pub const tcp_ca_state_TCP_CA_Disorder : tcp_ca_state = 1 ; pub const tcp_ca_state_TCP_CA_CWR : tcp_ca_state = 2 ; pub const tcp_ca_state_TCP_CA_Recovery : tcp_ca_state = 3 ; pub const tcp_ca_state_TCP_CA_Loss : tcp_ca_state = 4 ; pub type tcp_ca_state = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_info { pub tcpi_state : u8 , pub tcpi_ca_state : u8 , pub tcpi_retransmits : u8 , pub tcpi_probes : u8 , pub tcpi_backoff : u8 , pub tcpi_options : u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub tcpi_rto : u32 , pub tcpi_ato : u32 , pub tcpi_snd_mss : u32 , pub tcpi_rcv_mss : u32 , pub tcpi_unacked : u32 , pub tcpi_sacked : u32 , pub tcpi_lost : u32 , pub tcpi_retrans : u32 , pub tcpi_fackets : u32 , pub tcpi_last_data_sent : u32 , pub tcpi_last_ack_sent : u32 , pub tcpi_last_data_recv : u32 , pub tcpi_last_ack_recv : u32 , pub tcpi_pmtu : u32 , pub tcpi_rcv_ssthresh : u32 , pub tcpi_rtt : u32 , pub tcpi_rttvar : u32 , pub tcpi_snd_ssthresh : u32 , pub tcpi_snd_cwnd : u32 , pub tcpi_advmss : u32 , pub tcpi_reordering : u32 , pub tcpi_rcv_rtt : u32 , pub tcpi_rcv_space : u32 , pub tcpi_total_retrans : u32 , pub tcpi_pacing_rate : u64 , pub tcpi_max_pacing_rate : u64 , pub tcpi_bytes_acked : u64 , pub tcpi_bytes_received : u64 , pub tcpi_segs_out : u32 , pub tcpi_segs_in : u32 , pub tcpi_notsent_bytes : u32 , pub tcpi_min_rtt : u32 , pub tcpi_data_segs_in : u32 , pub tcpi_data_segs_out : u32 , pub tcpi_delivery_rate : u64 , pub tcpi_busy_time : u64 , pub tcpi_rwnd_limited : u64 , pub tcpi_sndbuf_limited : u64 , pub tcpi_delivered : u32 , pub tcpi_delivered_ce : u32 , pub tcpi_bytes_sent : u64 , pub tcpi_bytes_retrans : u64 , pub tcpi_dsack_dups : u32 , pub tcpi_reord_seen : u32 , pub tcpi_rcv_ooopack : u32 , pub tcpi_snd_wnd : u32 , pub tcpi_rcv_wnd : u32 , pub tcpi_rehash : u32 , pub tcpi_total_rto : u16 , pub tcpi_total_rto_recoveries : u16 , pub tcpi_total_rto_time : u32 , pub tcpi_received_ce : u32 , pub tcpi_delivered_e1_bytes : u32 , pub tcpi_delivered_e0_bytes : u32 , pub tcpi_delivered_ce_bytes : u32 , pub tcpi_received_e1_bytes : u32 , pub tcpi_received_e0_bytes : u32 , pub tcpi_received_ce_bytes : u32 , pub tcpi_accecn_fail_mode : u16 , pub tcpi_accecn_opt_seen : u16 , } # [test] fn bindgen_test_layout_tcp_info () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_info > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_info > () , 280usize , concat ! ("Size of: " , stringify ! (tcp_info))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_info > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ca_state) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ca_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retransmits) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retransmits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_probes) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_probes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_backoff) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_backoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_options) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_ato) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_ato))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_mss) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_mss) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_mss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_unacked) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_unacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sacked) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sacked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_lost) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_lost))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_retrans) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_fackets) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_fackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_sent) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_sent) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_data_recv) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_data_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_last_ack_recv) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_last_ack_recv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pmtu) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pmtu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ssthresh) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rtt) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rttvar) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rttvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_ssthresh) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_ssthresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_cwnd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_cwnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_advmss) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_advmss))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reordering) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reordering))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_rtt) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_space) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_retrans) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_pacing_rate) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_max_pacing_rate) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_max_pacing_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_acked) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_acked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_received) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_received))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_out) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_segs_in) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_notsent_bytes) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_notsent_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_min_rtt) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_min_rtt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_in) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_data_segs_out) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_data_segs_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivery_rate) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivery_rate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_busy_time) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_busy_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rwnd_limited) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rwnd_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_sndbuf_limited) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_sndbuf_limited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_sent) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_sent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_bytes_retrans) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_bytes_retrans))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_dsack_dups) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_dsack_dups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_reord_seen) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_reord_seen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_ooopack) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_ooopack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_snd_wnd) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rcv_wnd) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_rehash) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_rehash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_recoveries) as usize - ptr as usize } , 242usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_recoveries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_total_rto_time) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_total_rto_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e1_bytes) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_e0_bytes) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_delivered_ce_bytes) as usize - ptr as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_delivered_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e1_bytes) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e1_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_e0_bytes) as usize - ptr as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_e0_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_received_ce_bytes) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_received_ce_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_fail_mode) as usize - ptr as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_fail_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpi_accecn_opt_seen) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_info) , "::" , stringify ! (tcpi_accecn_opt_seen))) ; } impl tcp_info { # [inline] pub fn tcpi_snd_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_snd_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn tcpi_rcv_wscale (& self) -> u8 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_tcpi_rcv_wscale (& mut self , val : u8) { unsafe { let val : u8 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tcpi_snd_wscale : u8 , tcpi_rcv_wscale : u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let tcpi_snd_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_snd_wscale) } ; tcpi_snd_wscale as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let tcpi_rcv_wscale : u8 = unsafe { :: std :: mem :: transmute (tcpi_rcv_wscale) } ; tcpi_rcv_wscale as u64 }) ; __bindgen_bitfield_unit } } pub const TCP_NLA_PAD : _bindgen_ty_16 = 0 ; pub const TCP_NLA_BUSY : _bindgen_ty_16 = 1 ; pub const TCP_NLA_RWND_LIMITED : _bindgen_ty_16 = 2 ; pub const TCP_NLA_SNDBUF_LIMITED : _bindgen_ty_16 = 3 ; pub const TCP_NLA_DATA_SEGS_OUT : _bindgen_ty_16 = 4 ; pub const TCP_NLA_TOTAL_RETRANS : _bindgen_ty_16 = 5 ; pub const TCP_NLA_PACING_RATE : _bindgen_ty_16 = 6 ; pub const TCP_NLA_DELIVERY_RATE : _bindgen_ty_16 = 7 ; pub const TCP_NLA_SND_CWND : _bindgen_ty_16 = 8 ; pub const TCP_NLA_REORDERING : _bindgen_ty_16 = 9 ; pub const TCP_NLA_MIN_RTT : _bindgen_ty_16 = 10 ; pub const TCP_NLA_RECUR_RETRANS : _bindgen_ty_16 = 11 ; pub const TCP_NLA_DELIVERY_RATE_APP_LMT : _bindgen_ty_16 = 12 ; pub const TCP_NLA_SNDQ_SIZE : _bindgen_ty_16 = 13 ; pub const TCP_NLA_CA_STATE : _bindgen_ty_16 = 14 ; pub const TCP_NLA_SND_SSTHRESH : _bindgen_ty_16 = 15 ; pub const TCP_NLA_DELIVERED : _bindgen_ty_16 = 16 ; pub const TCP_NLA_DELIVERED_CE : _bindgen_ty_16 = 17 ; pub const TCP_NLA_BYTES_SENT : _bindgen_ty_16 = 18 ; pub const TCP_NLA_BYTES_RETRANS : _bindgen_ty_16 = 19 ; pub const TCP_NLA_DSACK_DUPS : _bindgen_ty_16 = 20 ; pub const TCP_NLA_REORD_SEEN : _bindgen_ty_16 = 21 ; pub const TCP_NLA_SRTT : _bindgen_ty_16 = 22 ; pub const TCP_NLA_TIMEOUT_REHASH : _bindgen_ty_16 = 23 ; pub const TCP_NLA_BYTES_NOTSENT : _bindgen_ty_16 = 24 ; pub const TCP_NLA_EDT : _bindgen_ty_16 = 25 ; pub const TCP_NLA_TTL : _bindgen_ty_16 = 26 ; pub const TCP_NLA_REHASH : _bindgen_ty_16 = 27 ; pub type _bindgen_ty_16 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_md5sig { pub tcpm_addr : sockaddr_storage , pub tcpm_flags : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_ifindex : :: std :: os :: raw :: c_int , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_md5sig > () , 216usize , concat ! ("Size of: " , stringify ! (tcp_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_md5sig > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_flags) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_ifindex) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_diag_md5sig { pub tcpm_family : u8 , pub tcpm_prefixlen : u8 , pub tcpm_keylen : u16 , pub tcpm_addr : [u32 ; 4usize] , pub tcpm_key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_diag_md5sig () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_diag_md5sig > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_diag_md5sig > () , 100usize , concat ! ("Size of: " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_diag_md5sig > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_diag_md5sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_prefixlen) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_prefixlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_keylen) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpm_key) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_diag_md5sig) , "::" , stringify ! (tcpm_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_add { pub addr : sockaddr_storage , pub alg_name : [i8 ; 64usize] , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub key : [u8 ; 80usize] , } # [test] fn bindgen_test_layout_tcp_ao_add () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_add > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_add > () , 288usize , concat ! ("Size of: " , stringify ! (tcp_ao_add))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_add > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 203usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_add) , "::" , stringify ! (key))) ; } impl tcp_ao_add { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 30u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 30u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 30u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_del { pub addr : sockaddr_storage , pub ifindex : i32 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub prefix : u8 , pub sndid : u8 , pub rcvid : u8 , pub current_key : u8 , pub rnext : u8 , pub keyflags : u8 , } # [test] fn bindgen_test_layout_tcp_ao_del () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_del > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_del > () , 144usize , concat ! ("Size of: " , stringify ! (tcp_ao_del))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_del > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_del) , "::" , stringify ! (keyflags))) ; } impl tcp_ao_del { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn del_async (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_del_async (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 29u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 29u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , del_async : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let del_async : u32 = unsafe { :: std :: mem :: transmute (del_async) } ; del_async as u64 }) ; __bindgen_bitfield_unit . set (3usize , 29u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_info_opt { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub reserved2 : u16 , pub current_key : u8 , pub rnext : u8 , pub pkt_good : u64 , pub pkt_bad : u64 , pub pkt_key_not_found : u64 , pub pkt_ao_required : u64 , pub pkt_dropped_icmp : u64 , } # [test] fn bindgen_test_layout_tcp_ao_info_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_info_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_info_opt > () , 48usize , concat ! ("Size of: " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_info_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_info_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved2) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_key) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (current_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rnext) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (rnext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_bad))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_key_not_found) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_key_not_found))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_ao_required) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_ao_required))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_dropped_icmp) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_info_opt) , "::" , stringify ! (pkt_dropped_icmp))) ; } impl tcp_ao_info_opt { # [inline] pub fn set_current (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_set_current (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn set_rnext (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_set_rnext (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn ao_required (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_ao_required (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn set_counters (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_set_counters (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn accept_icmps (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_accept_icmps (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (set_current : u32 , set_rnext : u32 , ao_required : u32 , set_counters : u32 , accept_icmps : u32 , reserved : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let set_current : u32 = unsafe { :: std :: mem :: transmute (set_current) } ; set_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let set_rnext : u32 = unsafe { :: std :: mem :: transmute (set_rnext) } ; set_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let ao_required : u32 = unsafe { :: std :: mem :: transmute (ao_required) } ; ao_required as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let set_counters : u32 = unsafe { :: std :: mem :: transmute (set_counters) } ; set_counters as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let accept_icmps : u32 = unsafe { :: std :: mem :: transmute (accept_icmps) } ; accept_icmps as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let reserved : u32 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_getsockopt { pub addr : sockaddr_storage , pub alg_name : [u8 ; 64usize] , pub key : [u8 ; 80usize] , pub nkeys : u32 , pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub sndid : u8 , pub rcvid : u8 , pub prefix : u8 , pub maclen : u8 , pub keyflags : u8 , pub keylen : u8 , pub ifindex : i32 , pub pkt_good : u64 , pub pkt_bad : u64 , } # [test] fn bindgen_test_layout_tcp_ao_getsockopt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_getsockopt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_getsockopt > () , 304usize , concat ! ("Size of: " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_getsockopt > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_getsockopt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alg_name) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (alg_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nkeys) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (nkeys))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sndid) as usize - ptr as usize } , 278usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (sndid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcvid) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (rcvid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maclen) as usize - ptr as usize } , 281usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (maclen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyflags) as usize - ptr as usize } , 282usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keyflags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keylen) as usize - ptr as usize } , 283usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (keylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifindex) as usize - ptr as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_good) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_good))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkt_bad) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_getsockopt) , "::" , stringify ! (pkt_bad))) ; } impl tcp_ao_getsockopt { # [inline] pub fn is_current (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_is_current (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn is_rnext (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_is_rnext (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn get_all (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_get_all (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 13u8) as u16) } } # [inline] pub fn set_reserved (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_current : u16 , is_rnext : u16 , get_all : u16 , reserved : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_current : u16 = unsafe { :: std :: mem :: transmute (is_current) } ; is_current as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let is_rnext : u16 = unsafe { :: std :: mem :: transmute (is_rnext) } ; is_rnext as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let get_all : u16 = unsafe { :: std :: mem :: transmute (get_all) } ; get_all as u64 }) ; __bindgen_bitfield_unit . set (3usize , 13u8 , { let reserved : u16 = unsafe { :: std :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct tcp_ao_repair { pub snt_isn : u32 , pub rcv_isn : u32 , pub snd_sne : u32 , pub rcv_sne : u32 , } # [test] fn bindgen_test_layout_tcp_ao_repair () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_ao_repair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_ao_repair > () , 16usize , concat ! ("Size of: " , stringify ! (tcp_ao_repair))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_ao_repair > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_ao_repair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snt_isn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snt_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_isn) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_isn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_sne) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (snd_sne))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_sne) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_ao_repair) , "::" , stringify ! (rcv_sne))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_opt { pub opt_code : u32 , pub opt_val : u32 , } # [test] fn bindgen_test_layout_tcp_repair_opt () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_opt > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_opt > () , 8usize , concat ! ("Size of: " , stringify ! (tcp_repair_opt))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_opt > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt_val) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_opt) , "::" , stringify ! (opt_val))) ; } pub const TCP_NO_QUEUE : _bindgen_ty_17 = 0 ; pub const TCP_RECV_QUEUE : _bindgen_ty_17 = 1 ; pub const TCP_SEND_QUEUE : _bindgen_ty_17 = 2 ; pub const TCP_QUEUES_NR : _bindgen_ty_17 = 3 ; pub type _bindgen_ty_17 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_cookie_transactions { pub tcpct_flags : u16 , pub __tcpct_pad1 : u8 , pub tcpct_cookie_desired : u8 , pub tcpct_s_data_desired : u16 , pub tcpct_used : u16 , pub tcpct_value : [u8 ; 536usize] , } # [test] fn bindgen_test_layout_tcp_cookie_transactions () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_cookie_transactions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_cookie_transactions > () , 544usize , concat ! ("Size of: " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_cookie_transactions > () , 2usize , concat ! ("Alignment of " , stringify ! (tcp_cookie_transactions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __tcpct_pad1) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (__tcpct_pad1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_cookie_desired) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_cookie_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_s_data_desired) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_s_data_desired))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_used) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tcpct_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_cookie_transactions) , "::" , stringify ! (tcpct_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_repair_window { pub snd_wl1 : u32 , pub snd_wnd : u32 , pub max_window : u32 , pub rcv_wnd : u32 , pub rcv_wup : u32 , } # [test] fn bindgen_test_layout_tcp_repair_window () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_repair_window > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_repair_window > () , 20usize , concat ! ("Size of: " , stringify ! (tcp_repair_window))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_repair_window > () , 4usize , concat ! ("Alignment of " , stringify ! (tcp_repair_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wl1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wl1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snd_wnd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (snd_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_window) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (max_window))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wnd) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wnd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcv_wup) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_repair_window) , "::" , stringify ! (rcv_wup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_zerocopy_receive { pub address : u64 , pub length : u32 , pub recv_skip_hint : u32 , pub inq : u32 , pub err : i32 , pub copybuf_address : u64 , pub copybuf_len : i32 , pub flags : u32 , pub msg_control : u64 , pub msg_controllen : u64 , pub msg_flags : u32 , pub reserved : u32 , } # [test] fn bindgen_test_layout_tcp_zerocopy_receive () { const UNINIT : :: std :: mem :: MaybeUninit < tcp_zerocopy_receive > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tcp_zerocopy_receive > () , 64usize , concat ! ("Size of: " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (:: std :: mem :: align_of :: < tcp_zerocopy_receive > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_zerocopy_receive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recv_skip_hint) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (recv_skip_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inq) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (inq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_address) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copybuf_len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (copybuf_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_control) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_controllen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg_flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reserved) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcp_zerocopy_receive) , "::" , stringify ! (reserved))) ; } extern "C" { pub fn inet_addr (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_lnaof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_makeaddr (__net : in_addr_t , __host : in_addr_t) -> in_addr ; } extern "C" { pub fn inet_netof (__in : in_addr) -> in_addr_t ; } extern "C" { pub fn inet_network (__cp : * const :: std :: os :: raw :: c_char) -> in_addr_t ; } extern "C" { pub fn inet_ntoa (__in : in_addr) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __len : socklen_t) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_aton (__cp : * const :: std :: os :: raw :: c_char , __inp : * mut in_addr) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_neta (__net : in_addr_t , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_ntop (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_void , __bits : :: std :: os :: raw :: c_int , __buf : * mut :: std :: os :: raw :: c_char , __len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn inet_net_pton (__af : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_void , __len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn inet_nsap_addr (__cp : * const :: std :: os :: raw :: c_char , __buf : * mut :: std :: os :: raw :: c_uchar , __len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn inet_nsap_ntoa (__len : :: std :: os :: raw :: c_int , __cp : * const :: std :: os :: raw :: c_uchar , __buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_timezone () { const UNINIT : :: std :: mem :: MaybeUninit < timezone > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timezone > () , 8usize , concat ! ("Size of: " , stringify ! (timezone))) ; assert_eq ! (:: std :: mem :: align_of :: < timezone > () , 4usize , concat ! ("Alignment of " , stringify ! (timezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_minuteswest) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_minuteswest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tz_dsttime) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (timezone) , "::" , stringify ! (tz_dsttime))) ; } extern "C" { pub fn gettimeofday (__tv : * mut timeval , __tz : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday (__tv : * const timeval , __tz : * const timezone) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime (__delta : * const timeval , __olddelta : * mut timeval) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [test] fn bindgen_test_layout_itimerval () { const UNINIT : :: std :: mem :: MaybeUninit < itimerval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < itimerval > () , 32usize , concat ! ("Size of: " , stringify ! (itimerval))) ; assert_eq ! (:: std :: mem :: align_of :: < itimerval > () , 8usize , concat ! ("Alignment of " , stringify ! (itimerval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_interval) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_interval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . it_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (itimerval) , "::" , stringify ! (it_value))) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer (__which : __itimer_which_t , __value : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer (__which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes (__file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes (__fd : :: std :: os :: raw :: c_int , __tvp : * const timeval) -> :: std :: os :: raw :: c_int ; } pub type nfds_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: std :: os :: raw :: c_int , pub events : :: std :: os :: raw :: c_short , pub revents : :: std :: os :: raw :: c_short , } # [test] fn bindgen_test_layout_pollfd () { const UNINIT : :: std :: mem :: MaybeUninit < pollfd > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: std :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . events) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revents) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } extern "C" { pub fn poll (__fds : * mut pollfd , __nfds : nfds_t , __timeout : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } pub const EXTINT_IRQ_OUT_INT0 : _bindgen_ty_18 = 0 ; pub const EXTINT_IRQ_OUT_INT1 : _bindgen_ty_18 = 1 ; pub const EXTINT_IRQ_OUT_INT2 : _bindgen_ty_18 = 2 ; pub const EXTINT_IRQ_OUT_INT3 : _bindgen_ty_18 = 3 ; pub const EXTINT_IRQ_OUT_INT4 : _bindgen_ty_18 = 4 ; pub const EXTINT_IRQ_OUT_INT5 : _bindgen_ty_18 = 5 ; pub const EXTINT_IRQ_OUT_INT6 : _bindgen_ty_18 = 6 ; pub const EXTINT_IRQ_OUT_INT7 : _bindgen_ty_18 = 7 ; pub const EXTINT_COUNT : _bindgen_ty_18 = 8 ; pub type _bindgen_ty_18 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t { pub io : avr_io_t , pub eint : [avr_extint_t__bindgen_ty_1 ; 8usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_extint_t__bindgen_ty_1 { pub isc : [avr_regbit_t ; 2usize] , pub vector : avr_int_vector_t , pub port_ioctl : u32 , pub port_pin : u8 , pub strict_lvl_trig : u8 , } # [test] fn bindgen_test_layout_avr_extint_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t__bindgen_ty_1 > () , 120usize , concat ! ("Size of: " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (isc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (vector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_pin) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (port_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strict_lvl_trig) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t__bindgen_ty_1) , "::" , stringify ! (strict_lvl_trig))) ; } # [test] fn bindgen_test_layout_avr_extint_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_extint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_extint_t > () , 1032usize , concat ! ("Size of: " , stringify ! (avr_extint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_extint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_extint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eint) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_extint_t) , "::" , stringify ! (eint))) ; } extern "C" { pub fn avr_extint_init (avr : * mut avr_t , p : * mut avr_extint_t) ; } extern "C" { pub fn avr_extint_is_strict_lvl_trig (avr : * mut avr_t , extint_no : u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_extint_set_strict_lvl_trig (avr : * mut avr_t , extint_no : u8 , strict : u8) ; } pub const USI_IRQ_DO : _bindgen_ty_19 = 0 ; pub const USI_IRQ_DI : _bindgen_ty_19 = 1 ; pub const USI_IRQ_USCK : _bindgen_ty_19 = 2 ; pub const USI_IRQ_TIM0_COMP : _bindgen_ty_19 = 3 ; pub const USI_IRQ_COUNT : _bindgen_ty_19 = 4 ; pub type _bindgen_ty_19 = :: std :: os :: raw :: c_uint ; pub const USI_WM_OFF : _bindgen_ty_20 = 0 ; pub const USI_WM_THREEWIRE : _bindgen_ty_20 = 1 ; pub const USI_WM_TWOWIRE : _bindgen_ty_20 = 2 ; pub const USI_WM_TWOWIRE_HOLD : _bindgen_ty_20 = 3 ; pub type _bindgen_ty_20 = :: std :: os :: raw :: c_uint ; pub const USI_CS_SOFTWARE : _bindgen_ty_21 = 0 ; pub const USI_CS_TIM0 : _bindgen_ty_21 = 1 ; pub const USI_CS_EXT_POS : _bindgen_ty_21 = 2 ; pub const USI_CS_EXT_NEG : _bindgen_ty_21 = 3 ; pub type _bindgen_ty_21 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usi_t { pub io : avr_io_t , pub r_usicr : avr_io_addr_t , pub r_usisr : avr_io_addr_t , pub r_usidr : avr_io_addr_t , pub r_usibr : avr_io_addr_t , pub usipf : avr_regbit_t , pub usidc : avr_regbit_t , pub usiwm : avr_regbit_t , pub usics : avr_regbit_t , pub usiclk : avr_regbit_t , pub usitc : avr_regbit_t , pub port_ioctl : u32 , pub pin_di : avr_regbit_t , pub pin_do : avr_regbit_t , pub pin_usck : avr_regbit_t , pub toggle_irq : * mut avr_irq_t , pub usi_start : avr_int_vector_t , pub usi_ovf : avr_int_vector_t , pub clock_high : u8 , pub in_bit0 : u8 , } # [test] fn bindgen_test_layout_avr_usi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usi_t > () , 344usize , concat ! ("Size of: " , stringify ! (avr_usi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usicr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usicr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usisr) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usidr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usidr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usibr) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (r_usibr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usipf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usipf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usidc) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usidc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiwm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiwm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usics) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usiclk) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usiclk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usitc) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usitc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port_ioctl) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (port_ioctl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_di) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_di))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_do) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_do))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pin_usck) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (pin_usck))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . toggle_irq) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (toggle_irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_start) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usi_ovf) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (usi_ovf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clock_high) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (clock_high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_bit0) as usize - ptr as usize } , 337usize , concat ! ("Offset of field: " , stringify ! (avr_usi_t) , "::" , stringify ! (in_bit0))) ; } extern "C" { pub fn avr_usi_init (avr : * mut avr_t , port : * mut avr_usi_t) ; } pub const ACOMP_IRQ_AIN0 : _bindgen_ty_22 = 0 ; pub const ACOMP_IRQ_AIN1 : _bindgen_ty_22 = 1 ; pub const ACOMP_IRQ_ADC0 : _bindgen_ty_22 = 2 ; pub const ACOMP_IRQ_ADC1 : _bindgen_ty_22 = 3 ; pub const ACOMP_IRQ_ADC2 : _bindgen_ty_22 = 4 ; pub const ACOMP_IRQ_ADC3 : _bindgen_ty_22 = 5 ; pub const ACOMP_IRQ_ADC4 : _bindgen_ty_22 = 6 ; pub const ACOMP_IRQ_ADC5 : _bindgen_ty_22 = 7 ; pub const ACOMP_IRQ_ADC6 : _bindgen_ty_22 = 8 ; pub const ACOMP_IRQ_ADC7 : _bindgen_ty_22 = 9 ; pub const ACOMP_IRQ_ADC8 : _bindgen_ty_22 = 10 ; pub const ACOMP_IRQ_ADC9 : _bindgen_ty_22 = 11 ; pub const ACOMP_IRQ_ADC10 : _bindgen_ty_22 = 12 ; pub const ACOMP_IRQ_ADC11 : _bindgen_ty_22 = 13 ; pub const ACOMP_IRQ_ADC12 : _bindgen_ty_22 = 14 ; pub const ACOMP_IRQ_ADC13 : _bindgen_ty_22 = 15 ; pub const ACOMP_IRQ_ADC14 : _bindgen_ty_22 = 16 ; pub const ACOMP_IRQ_ADC15 : _bindgen_ty_22 = 17 ; pub const ACOMP_IRQ_OUT : _bindgen_ty_22 = 18 ; pub const ACOMP_IRQ_COUNT : _bindgen_ty_22 = 19 ; pub type _bindgen_ty_22 = :: std :: os :: raw :: c_uint ; pub const ACOMP_BANDGAP : _bindgen_ty_23 = 1100 ; pub type _bindgen_ty_23 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_acomp_t { pub io : avr_io_t , pub mux_inputs : u8 , pub mux : [avr_regbit_t ; 4usize] , pub pradc : avr_regbit_t , pub aden : avr_regbit_t , pub acme : avr_regbit_t , pub r_acsr : avr_io_addr_t , pub acis : [avr_regbit_t ; 2usize] , pub acic : avr_regbit_t , pub aco : avr_regbit_t , pub acbg : avr_regbit_t , pub disabled : avr_regbit_t , pub timer_name : :: std :: os :: raw :: c_char , pub ac : avr_int_vector_t , pub adc_values : [u16 ; 16usize] , pub ain_values : [u16 ; 2usize] , pub timer_irq : * mut avr_irq_t , } # [test] fn bindgen_test_layout_avr_acomp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_acomp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_acomp_t > () , 288usize , concat ! ("Size of: " , stringify ! (avr_acomp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_acomp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_acomp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux_inputs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux_inputs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pradc) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (pradc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acme) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_acsr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (r_acsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acis) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acic) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aco) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (aco))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . acbg) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (acbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_name) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ac) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ac))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ain_values) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (ain_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer_irq) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (avr_acomp_t) , "::" , stringify ! (timer_irq))) ; } extern "C" { pub fn avr_acomp_init (avr : * mut avr_t , port : * mut avr_acomp_t) ; } pub const uart_fifo_overflow_f : _bindgen_ty_24 = 1 ; pub type _bindgen_ty_24 = :: std :: os :: raw :: c_uint ; pub const uart_fifo_fifo_size : _bindgen_ty_25 = 64 ; pub type _bindgen_ty_25 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uart_fifo_t { pub buffer : [u16 ; 64usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_uart_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < uart_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < uart_fifo_t > () , 134usize , concat ! ("Size of: " , stringify ! (uart_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < uart_fifo_t > () , 2usize , concat ! ("Alignment of " , stringify ! (uart_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (uart_fifo_t) , "::" , stringify ! (flags))) ; } pub const UART_IRQ_INPUT : _bindgen_ty_26 = 0 ; pub const UART_IRQ_OUTPUT : _bindgen_ty_26 = 1 ; pub const UART_IRQ_OUT_XON : _bindgen_ty_26 = 2 ; pub const UART_IRQ_OUT_XOFF : _bindgen_ty_26 = 3 ; pub const UART_IRQ_COUNT : _bindgen_ty_26 = 4 ; pub type _bindgen_ty_26 = :: std :: os :: raw :: c_uint ; pub const UART_INPUT_FE : _bindgen_ty_27 = 32768 ; pub type _bindgen_ty_27 = :: std :: os :: raw :: c_uint ; pub const AVR_UART_FLAG_POOL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_POLL_SLEEP : _bindgen_ty_28 = 1 ; pub const AVR_UART_FLAG_STDIO : _bindgen_ty_28 = 2 ; pub const AVR_UART_FLAG_RAW : _bindgen_ty_28 = 4 ; pub type _bindgen_ty_28 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_uart_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_udr : avr_io_addr_t , pub r_ucsra : avr_io_addr_t , pub r_ucsrb : avr_io_addr_t , pub r_ucsrc : avr_io_addr_t , pub rxen : avr_regbit_t , pub txen : avr_regbit_t , pub u2x : avr_regbit_t , pub usbs : avr_regbit_t , pub ucsz : avr_regbit_t , pub ucsz2 : avr_regbit_t , pub fe : avr_regbit_t , pub dor : avr_regbit_t , pub upe : avr_regbit_t , pub rxb8 : avr_regbit_t , pub ubrrl : avr_regbit_t , pub ubrrh : avr_regbit_t , pub rxc : avr_int_vector_t , pub txc : avr_int_vector_t , pub udrc : avr_int_vector_t , pub input : uart_fifo_t , pub tx_cnt : u8 , pub rx_cnt : u32 , pub flags : u32 , pub cycles_per_byte : avr_cycle_count_t , pub rxc_raise_time : avr_cycle_count_t , pub stdio_out : * mut u8 , pub stdio_len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_avr_uart_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_uart_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_uart_t > () , 624usize , concat ! ("Size of: " , stringify ! (avr_uart_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_uart_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_uart_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_udr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_udr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsra) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrb) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ucsrc) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (r_ucsrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u2x) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (u2x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbs) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (usbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucsz2) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ucsz2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fe) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (fe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dor) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (dor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . upe) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (upe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxb8) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxb8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrl) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ubrrh) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (ubrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . txc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (txc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . udrc) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (udrc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tx_cnt) as usize - ptr as usize } , 582usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (tx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rx_cnt) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rx_cnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles_per_byte) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (cycles_per_byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rxc_raise_time) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (rxc_raise_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_out) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stdio_len) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (avr_uart_t) , "::" , stringify ! (stdio_len))) ; } extern "C" { pub fn avr_uart_init (avr : * mut avr_t , port : * mut avr_uart_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_flash_t { pub io : avr_io_t , pub flags : u16 , pub tmppage : * mut u16 , pub tmppage_used : * mut u8 , pub spm_pagesize : u16 , pub r_spm : u8 , pub selfprgen : avr_regbit_t , pub pgers : avr_regbit_t , pub pgwrt : avr_regbit_t , pub blbset : avr_regbit_t , pub rwwsre : avr_regbit_t , pub rwwsb : avr_regbit_t , pub sigrd : avr_regbit_t , pub flash : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_flash_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_flash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_flash_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_flash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_flash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_flash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmppage_used) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (tmppage_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spm_pagesize) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (spm_pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spm) as usize - ptr as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (r_spm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selfprgen) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (selfprgen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgers) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pgwrt) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (pgwrt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blbset) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (blbset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsre) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsre))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rwwsb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (rwwsb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sigrd) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (sigrd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flash) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_flash_t) , "::" , stringify ! (flash))) ; } extern "C" { pub fn avr_flash_init (avr : * mut avr_t , p : * mut avr_flash_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_watchdog_t { pub io : avr_io_t , pub wdrf : avr_regbit_t , pub wdce : avr_regbit_t , pub wde : avr_regbit_t , pub wdp : [avr_regbit_t ; 4usize] , pub watchdog : avr_int_vector_t , pub cycle_count : avr_cycle_count_t , } # [test] fn bindgen_test_layout_avr_watchdog_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_watchdog_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_watchdog_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_watchdog_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_watchdog_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_watchdog_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdrf) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdce) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdce))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wde) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wde))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wdp) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (wdp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchdog) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (watchdog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycle_count) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (avr_watchdog_t) , "::" , stringify ! (cycle_count))) ; } extern "C" { pub fn avr_watchdog_init (avr : * mut avr_t , p : * mut avr_watchdog_t) ; } pub type wchar_t = :: std :: os :: raw :: c_int ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [test] fn bindgen_test_layout_max_align_t () { const UNINIT : :: std :: mem :: MaybeUninit < max_align_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < max_align_t > () , 32usize , concat ! ("Size of: " , stringify ! (max_align_t))) ; assert_eq ! (:: std :: mem :: align_of :: < max_align_t > () , 16usize , concat ! ("Alignment of " , stringify ! (max_align_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce1) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __clang_max_align_nonce2) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (max_align_t) , "::" , stringify ! (__clang_max_align_nonce2))) ; } extern "C" { pub fn sim_setup_firmware (filename : * const :: std :: os :: raw :: c_char , loadBase : u32 , fp : * mut elf_firmware_t , progname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn read_hex_string (src : * const :: std :: os :: raw :: c_char , buffer : * mut u8 , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn read_ihex_file (fname : * const :: std :: os :: raw :: c_char , dsize : * mut u32 , start : * mut u32) -> * mut u8 ; } extern "C" { pub fn hdump (w : * const :: std :: os :: raw :: c_char , b : * mut u8 , l : usize) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __mbstate_t { pub __count : :: std :: os :: raw :: c_int , pub __value : __mbstate_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __mbstate_t__bindgen_ty_1 { pub __wch : :: std :: os :: raw :: c_uint , pub __wchb : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout___mbstate_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wchb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t__bindgen_ty_1) , "::" , stringify ! (__wchb))) ; } # [test] fn bindgen_test_layout___mbstate_t () { const UNINIT : :: std :: mem :: MaybeUninit < __mbstate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __mbstate_t > () , 8usize , concat ! ("Size of: " , stringify ! (__mbstate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < __mbstate_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__mbstate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__mbstate_t) , "::" , stringify ! (__value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos_t { pub __pos : __off_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos_t) , "::" , stringify ! (__state))) ; } pub type __fpos_t = _G_fpos_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct _G_fpos64_t { pub __pos : __off64_t , pub __state : __mbstate_t , } # [test] fn bindgen_test_layout__G_fpos64_t () { const UNINIT : :: std :: mem :: MaybeUninit < _G_fpos64_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _G_fpos64_t > () , 16usize , concat ! ("Size of: " , stringify ! (_G_fpos64_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _G_fpos64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_G_fpos64_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __state) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_G_fpos64_t) , "::" , stringify ! (__state))) ; } pub type __fpos64_t = _G_fpos64_t ; pub type __FILE = _IO_FILE ; pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _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 _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 { i32::cast_unsigned (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub type cookie_read_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * mut :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_write_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __buf : * const :: std :: os :: raw :: c_char , __nbytes : usize) -> __ssize_t > ; pub type cookie_seek_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void , __pos : * mut __off64_t , __w : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type cookie_close_function_t = :: std :: option :: Option < unsafe extern "C" fn (__cookie : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_cookie_io_functions_t { pub read : cookie_read_function_t , pub write : cookie_write_function_t , pub seek : cookie_seek_function_t , pub close : cookie_close_function_t , } # [test] fn bindgen_test_layout__IO_cookie_io_functions_t () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_cookie_io_functions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _IO_cookie_io_functions_t > () , 32usize , concat ! ("Size of: " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < _IO_cookie_io_functions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (_IO_cookie_io_functions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_cookie_io_functions_t) , "::" , stringify ! (close))) ; } pub type cookie_io_functions_t = _IO_cookie_io_functions_t ; pub type fpos_t = __fpos_t ; extern "C" { pub static mut stdin : * mut FILE ; } extern "C" { pub static mut stdout : * mut FILE ; } extern "C" { pub static mut stderr : * mut FILE ; } extern "C" { pub fn remove (__filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn rename (__old : * const :: std :: os :: raw :: c_char , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn renameat (__oldfd : :: std :: os :: raw :: c_int , __old : * const :: std :: os :: raw :: c_char , __newfd : :: std :: os :: raw :: c_int , __new : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn tmpfile () -> * mut FILE ; } extern "C" { pub fn tmpnam (arg1 : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tmpnam_r (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn tempnam (__dir : * const :: std :: os :: raw :: c_char , __pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn fflush (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fflush_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn freopen (__filename : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> * mut FILE ; } extern "C" { pub fn fdopen (__fd : :: std :: os :: raw :: c_int , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn fopencookie (__magic_cookie : * mut :: std :: os :: raw :: c_void , __modes : * const :: std :: os :: raw :: c_char , __io_funcs : cookie_io_functions_t) -> * mut FILE ; } extern "C" { pub fn fmemopen (__s : * mut :: std :: os :: raw :: c_void , __len : usize , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn open_memstream (__bufloc : * mut * mut :: std :: os :: raw :: c_char , __sizeloc : * mut usize) -> * mut FILE ; } extern "C" { pub fn setbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn setvbuf (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __modes : :: std :: os :: raw :: c_int , __n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setbuffer (__stream : * mut FILE , __buf : * mut :: std :: os :: raw :: c_char , __size : usize) ; } extern "C" { pub fn setlinebuf (__stream : * mut FILE) ; } extern "C" { pub fn fprintf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn printf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfprintf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vprintf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsprintf (__s : * mut :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn snprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsnprintf (__s : * mut :: std :: os :: raw :: c_char , __maxlen : :: std :: os :: raw :: c_ulong , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vasprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __f : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn asprintf (__ptr : * mut * mut :: std :: os :: raw :: c_char , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vdprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn dprintf (__fd : :: std :: os :: raw :: c_int , __fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fscanf (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn scanf (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } pub type __cfloat128 = __BindgenComplex < u128 > ; pub type _Float128 = u128 ; pub type _Float32 = f32 ; pub type _Float64 = f64 ; pub type _Float32x = f64 ; pub type _Float64x = u128 ; extern "C" { # [link_name = "\u{1}__isoc99_fscanf"] pub fn fscanf1 (__stream : * mut FILE , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_scanf"] pub fn scanf1 (__format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_sscanf"] pub fn sscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vfscanf (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vscanf (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn vsscanf (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vfscanf"] pub fn vfscanf1 (__s : * mut FILE , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vscanf"] pub fn vscanf1 (__format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { # [link_name = "\u{1}__isoc99_vsscanf"] pub fn vsscanf1 (__s : * const :: std :: os :: raw :: c_char , __format : * const :: std :: os :: raw :: c_char , __arg : * mut __va_list_tag) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getchar_unlocked () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgetc_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fputc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putc_unlocked (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putchar_unlocked (__c : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn getw (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn putw (__w : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fgets (__s : * mut :: std :: os :: raw :: c_char , __n : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn __getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getdelim (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __delimiter : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn getline (__lineptr : * mut * mut :: std :: os :: raw :: c_char , __n : * mut usize , __stream : * mut FILE) -> __ssize_t ; } extern "C" { pub fn fputs (__s : * const :: std :: os :: raw :: c_char , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn puts (__s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ungetc (__c : :: std :: os :: raw :: c_int , __stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fread (__ptr : * mut :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __stream : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fwrite (__ptr : * const :: std :: os :: raw :: c_void , __size : :: std :: os :: raw :: c_ulong , __n : :: std :: os :: raw :: c_ulong , __s : * mut FILE) -> :: std :: os :: raw :: c_ulong ; } extern "C" { pub fn fread_unlocked (__ptr : * mut :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fwrite_unlocked (__ptr : * const :: std :: os :: raw :: c_void , __size : usize , __n : usize , __stream : * mut FILE) -> usize ; } extern "C" { pub fn fseek (__stream : * mut FILE , __off : :: std :: os :: raw :: c_long , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftell (__stream : * mut FILE) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn rewind (__stream : * mut FILE) ; } extern "C" { pub fn fseeko (__stream : * mut FILE , __off : __off_t , __whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ftello (__stream : * mut FILE) -> __off_t ; } extern "C" { pub fn fgetpos (__stream : * mut FILE , __pos : * mut fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fsetpos (__stream : * mut FILE , __pos : * const fpos_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr (__stream : * mut FILE) ; } extern "C" { pub fn feof (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn clearerr_unlocked (__stream : * mut FILE) ; } extern "C" { pub fn feof_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn ferror_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn perror (__s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn fileno (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn fileno_unlocked (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pclose (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn popen (__command : * const :: std :: os :: raw :: c_char , __modes : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn ctermid (__s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn flockfile (__stream : * mut FILE) ; } extern "C" { pub fn ftrylockfile (__stream : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn funlockfile (__stream : * mut FILE) ; } extern "C" { pub fn __uflow (arg1 : * mut FILE) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn __overflow (arg1 : * mut FILE , arg2 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_signal_t { pub irq : avr_irq_t , pub alias : [:: std :: os :: raw :: c_char ; 8usize] , pub size : u8 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , } # [test] fn bindgen_test_layout_avr_vcd_signal_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_signal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_signal_t > () , 88usize , concat ! ("Size of: " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_signal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_signal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_signal_t) , "::" , stringify ! (name))) ; } pub type avr_vcd_signal_p = * mut avr_vcd_signal_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_log_t { pub when : u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 6usize] > , } # [test] fn bindgen_test_layout_avr_vcd_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_log_t) , "::" , stringify ! (when))) ; } impl avr_vcd_log_t { # [inline] pub fn sigindex (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_sigindex (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn floating (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_floating (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn value (& self) -> u64 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (9usize , 32u8) as u64) } } # [inline] pub fn set_value (& mut self , val : u64) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 32u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sigindex : u64 , floating : u64 , value : u64) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let sigindex : u64 = unsafe { :: std :: mem :: transmute (sigindex) } ; sigindex as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let floating : u64 = unsafe { :: std :: mem :: transmute (floating) } ; floating as u64 }) ; __bindgen_bitfield_unit . set (9usize , 32u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } pub type avr_vcd_log_p = * mut avr_vcd_log_t ; pub const avr_vcd_fifo_overflow_f : _bindgen_ty_29 = 1 ; pub type _bindgen_ty_29 = :: std :: os :: raw :: c_uint ; pub const avr_vcd_fifo_fifo_size : _bindgen_ty_30 = 256 ; pub type _bindgen_ty_30 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_fifo_t { pub buffer : [avr_vcd_log_t ; 256usize] , pub read : u16 , pub write : u16 , pub flags : u8 , } # [test] fn bindgen_test_layout_avr_vcd_fifo_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_fifo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_fifo_t > () , 4104usize , concat ! ("Size of: " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_fifo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_fifo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4098usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_fifo_t) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_vcd_t { pub avr : * mut avr_t , pub filename : * mut :: std :: os :: raw :: c_char , pub output : * mut FILE , pub input : * mut FILE , pub input_line : * mut argv_t , pub stop : :: std :: os :: raw :: c_int , pub signal_count : :: std :: os :: raw :: c_int , pub signal : [avr_vcd_signal_t ; 64usize] , pub start : u64 , pub period : u64 , pub vcd_to_ns : u64 , pub log : avr_vcd_fifo_t , } # [test] fn bindgen_test_layout_avr_vcd_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_vcd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_vcd_t > () , 9808usize , concat ! ("Size of: " , stringify ! (avr_vcd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_vcd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_vcd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_line) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (input_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal_count) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 5680usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . period) as usize - ptr as usize } , 5688usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcd_to_ns) as usize - ptr as usize } , 5696usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (vcd_to_ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 5704usize , concat ! ("Offset of field: " , stringify ! (avr_vcd_t) , "::" , stringify ! (log))) ; } extern "C" { pub fn avr_vcd_init (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t , period : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_init_input (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char , vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_close (vcd : * mut avr_vcd_t) ; } extern "C" { pub fn avr_vcd_add_signal (vcd : * mut avr_vcd_t , signal_irq : * mut avr_irq_t , signal_bit_size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_start_with_comment (vcd : * mut avr_vcd_t , comment : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_vcd_stop (vcd : * mut avr_vcd_t) -> :: std :: os :: raw :: c_int ; } pub const ADC_IRQ_ADC0 : _bindgen_ty_31 = 0 ; pub const ADC_IRQ_ADC1 : _bindgen_ty_31 = 1 ; pub const ADC_IRQ_ADC2 : _bindgen_ty_31 = 2 ; pub const ADC_IRQ_ADC3 : _bindgen_ty_31 = 3 ; pub const ADC_IRQ_ADC4 : _bindgen_ty_31 = 4 ; pub const ADC_IRQ_ADC5 : _bindgen_ty_31 = 5 ; pub const ADC_IRQ_ADC6 : _bindgen_ty_31 = 6 ; pub const ADC_IRQ_ADC7 : _bindgen_ty_31 = 7 ; pub const ADC_IRQ_ADC8 : _bindgen_ty_31 = 8 ; pub const ADC_IRQ_ADC9 : _bindgen_ty_31 = 9 ; pub const ADC_IRQ_ADC10 : _bindgen_ty_31 = 10 ; pub const ADC_IRQ_ADC11 : _bindgen_ty_31 = 11 ; pub const ADC_IRQ_ADC12 : _bindgen_ty_31 = 12 ; pub const ADC_IRQ_ADC13 : _bindgen_ty_31 = 13 ; pub const ADC_IRQ_ADC14 : _bindgen_ty_31 = 14 ; pub const ADC_IRQ_ADC15 : _bindgen_ty_31 = 15 ; pub const ADC_IRQ_TEMP : _bindgen_ty_31 = 16 ; pub const ADC_IRQ_IN_TRIGGER : _bindgen_ty_31 = 17 ; pub const ADC_IRQ_OUT_TRIGGER : _bindgen_ty_31 = 18 ; pub const ADC_IRQ_COUNT : _bindgen_ty_31 = 19 ; pub type _bindgen_ty_31 = :: std :: os :: raw :: c_uint ; pub const ADC_MUX_NONE : _bindgen_ty_32 = 0 ; pub const ADC_MUX_NOISE : _bindgen_ty_32 = 1 ; pub const ADC_MUX_SINGLE : _bindgen_ty_32 = 2 ; pub const ADC_MUX_DIFF : _bindgen_ty_32 = 3 ; pub const ADC_MUX_TEMP : _bindgen_ty_32 = 4 ; pub const ADC_MUX_REF : _bindgen_ty_32 = 5 ; pub const ADC_MUX_VCC4 : _bindgen_ty_32 = 6 ; pub type _bindgen_ty_32 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_mux_t { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_adc_mux_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_adc_mux_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_mux_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_mux_t))) ; } impl avr_adc_mux_t { # [inline] pub fn kind (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 3u8) as u64) } } # [inline] pub fn set_kind (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn gain (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (3usize , 8u8) as u64) } } # [inline] pub fn set_gain (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 8u8 , val as u64) } } # [inline] pub fn diff (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (11usize , 8u8) as u64) } } # [inline] pub fn set_diff (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 8u8 , val as u64) } } # [inline] pub fn src (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (19usize , 13u8) as u64) } } # [inline] pub fn set_src (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 13u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (kind : :: std :: os :: raw :: c_ulong , gain : :: std :: os :: raw :: c_ulong , diff : :: std :: os :: raw :: c_ulong , src : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let kind : u64 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit . set (3usize , 8u8 , { let gain : u64 = unsafe { :: std :: mem :: transmute (gain) } ; gain as u64 }) ; __bindgen_bitfield_unit . set (11usize , 8u8 , { let diff : u64 = unsafe { :: std :: mem :: transmute (diff) } ; diff as u64 }) ; __bindgen_bitfield_unit . set (19usize , 13u8 , { let src : u64 = unsafe { :: std :: mem :: transmute (src) } ; src as u64 }) ; __bindgen_bitfield_unit } } pub const ADC_VREF_AREF : _bindgen_ty_33 = 0 ; pub const ADC_VREF_VCC : _bindgen_ty_33 = 1 ; pub const ADC_VREF_AVCC : _bindgen_ty_33 = 2 ; pub const ADC_VREF_V110 : _bindgen_ty_33 = 1100 ; pub const ADC_VREF_V256 : _bindgen_ty_33 = 2560 ; pub type _bindgen_ty_33 = :: std :: os :: raw :: c_uint ; pub const avr_adts_type_avr_adts_none : avr_adts_type = 0 ; pub const avr_adts_type_avr_adts_free_running : avr_adts_type = 1 ; pub const avr_adts_type_avr_adts_analog_comparator_0 : avr_adts_type = 2 ; pub const avr_adts_type_avr_adts_analog_comparator_1 : avr_adts_type = 3 ; pub const avr_adts_type_avr_adts_analog_comparator_2 : avr_adts_type = 4 ; pub const avr_adts_type_avr_adts_analog_comparator_3 : avr_adts_type = 5 ; pub const avr_adts_type_avr_adts_external_interrupt_0 : avr_adts_type = 6 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_a : avr_adts_type = 7 ; pub const avr_adts_type_avr_adts_timer_0_compare_match_b : avr_adts_type = 8 ; pub const avr_adts_type_avr_adts_timer_0_overflow : avr_adts_type = 9 ; pub const avr_adts_type_avr_adts_timer_1_compare_match_b : avr_adts_type = 10 ; pub const avr_adts_type_avr_adts_timer_1_overflow : avr_adts_type = 11 ; pub const avr_adts_type_avr_adts_timer_1_capture_event : avr_adts_type = 12 ; pub const avr_adts_type_avr_adts_pin_change_interrupt : avr_adts_type = 13 ; pub const avr_adts_type_avr_adts_psc_module_0_sync_signal : avr_adts_type = 14 ; pub const avr_adts_type_avr_adts_psc_module_1_sync_signal : avr_adts_type = 15 ; pub const avr_adts_type_avr_adts_psc_module_2_sync_signal : avr_adts_type = 16 ; pub type avr_adts_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t { pub io : avr_io_t , pub r_admux : u8 , pub mux : [avr_regbit_t ; 6usize] , pub ref_ : [avr_regbit_t ; 3usize] , pub ref_values : [u16 ; 8usize] , pub adlar : avr_regbit_t , pub r_adcsra : u8 , pub aden : avr_regbit_t , pub adsc : avr_regbit_t , pub adate : avr_regbit_t , pub adps : [avr_regbit_t ; 3usize] , pub r_adcl : u8 , pub r_adch : u8 , pub r_adcsrb : u8 , pub adts : [avr_regbit_t ; 4usize] , pub adts_op : [avr_adts_type ; 16usize] , pub adts_mode : u8 , pub bin : avr_regbit_t , pub ipr : avr_regbit_t , pub adc : avr_int_vector_t , pub muxmode : [avr_adc_mux_t ; 64usize] , pub adc_values : [u16 ; 16usize] , pub temp : u16 , pub first : u8 , pub read_status : u8 , pub current_muxi : u8 , pub current_refi : u8 , pub current_prescale : u8 , pub current_extras : avr_adc_t__bindgen_ty_1 , pub result : u16 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_adc_t__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_avr_adc_t__bindgen_ty_1 () { assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_adc_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_adc_t__bindgen_ty_1))) ; } impl avr_adc_t__bindgen_ty_1 { # [inline] pub fn bipolar (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bipolar (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn negate (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_negate (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn adjust (& self) -> :: std :: os :: raw :: c_uint { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_adjust (& mut self , val : :: std :: os :: raw :: c_uint) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bipolar : :: std :: os :: raw :: c_uint , negate : :: std :: os :: raw :: c_uint , adjust : :: std :: os :: raw :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bipolar : u32 = unsafe { :: std :: mem :: transmute (bipolar) } ; bipolar as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let negate : u32 = unsafe { :: std :: mem :: transmute (negate) } ; negate as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let adjust : u32 = unsafe { :: std :: mem :: transmute (adjust) } ; adjust as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_avr_adc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_adc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_adc_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_adc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_adc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_adc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_admux) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_admux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mux) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (mux))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_values) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ref_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adlar) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adlar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsra) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsra))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aden) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (aden))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adsc) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adate) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adps) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcl) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adch) as usize - ptr as usize } , 161usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_adcsrb) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (r_adcsrb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_op) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adts_mode) as usize - ptr as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adts_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ipr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (ipr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muxmode) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (muxmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adc_values) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (adc_values))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . temp) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 906usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_status) as usize - ptr as usize } , 907usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (read_status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_muxi) as usize - ptr as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_muxi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_refi) as usize - ptr as usize } , 909usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_refi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_prescale) as usize - ptr as usize } , 910usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_prescale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_extras) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (current_extras))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 916usize , concat ! ("Offset of field: " , stringify ! (avr_adc_t) , "::" , stringify ! (result))) ; } extern "C" { pub fn avr_adc_init (avr : * mut avr_t , port : * mut avr_adc_t) ; } pub const avr_gdb_watch_type_AVR_GDB_BREAK_SOFT : avr_gdb_watch_type = 1 ; pub const avr_gdb_watch_type_AVR_GDB_BREAK_HARD : avr_gdb_watch_type = 2 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_WRITE : avr_gdb_watch_type = 4 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_READ : avr_gdb_watch_type = 8 ; pub const avr_gdb_watch_type_AVR_GDB_WATCH_ACCESS : avr_gdb_watch_type = 16 ; pub type avr_gdb_watch_type = :: std :: os :: raw :: c_uint ; extern "C" { pub fn avr_gdb_init (avr : * mut avr_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_deinit_gdb (avr : * mut avr_t) ; } extern "C" { pub fn avr_gdb_processor (avr : * mut avr_t , sleep : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_gdb_handle_watchpoints (g : * mut avr_t , addr : u16 , type_ : avr_gdb_watch_type) ; } extern "C" { pub fn avr_gdb_handle_break (arg1 : * mut avr_t) ; } pub const TWI_IRQ_INPUT : _bindgen_ty_34 = 0 ; pub const TWI_IRQ_OUTPUT : _bindgen_ty_34 = 1 ; pub const TWI_IRQ_STATUS : _bindgen_ty_34 = 2 ; pub const TWI_IRQ_COUNT : _bindgen_ty_34 = 3 ; pub type _bindgen_ty_34 = :: std :: os :: raw :: c_uint ; pub const TWI_COND_START : _bindgen_ty_35 = 1 ; pub const TWI_COND_STOP : _bindgen_ty_35 = 2 ; pub const TWI_COND_ADDR : _bindgen_ty_35 = 4 ; pub const TWI_COND_ACK : _bindgen_ty_35 = 8 ; pub const TWI_COND_WRITE : _bindgen_ty_35 = 16 ; pub const TWI_COND_READ : _bindgen_ty_35 = 32 ; pub const TWI_COND_SLAVE : _bindgen_ty_35 = 64 ; pub type _bindgen_ty_35 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_twi_msg_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_twi_msg_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_t))) ; } impl avr_twi_msg_t { # [inline] pub fn unused (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_unused (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn msg (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_msg (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn addr (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_addr (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn data (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_data (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (unused : u32 , msg : u32 , addr : u32 , data : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let unused : u32 = unsafe { :: std :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let msg : u32 = unsafe { :: std :: mem :: transmute (msg) } ; msg as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let addr : u32 = unsafe { :: std :: mem :: transmute (addr) } ; addr as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let data : u32 = unsafe { :: std :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct avr_twi_msg_irq_t { pub u : avr_twi_msg_irq_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union avr_twi_msg_irq_t__bindgen_ty_1 { pub v : u32 , pub twi : avr_twi_msg_t , } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t__bindgen_ty_1) , "::" , stringify ! (twi))) ; } # [test] fn bindgen_test_layout_avr_twi_msg_irq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_msg_irq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_msg_irq_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_twi_msg_irq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . u) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_msg_irq_t) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_twi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_twbr : avr_io_addr_t , pub r_twcr : avr_io_addr_t , pub r_twsr : avr_io_addr_t , pub r_twar : avr_io_addr_t , pub r_twamr : avr_io_addr_t , pub r_twdr : avr_io_addr_t , pub twen : avr_regbit_t , pub twea : avr_regbit_t , pub twsta : avr_regbit_t , pub twsto : avr_regbit_t , pub twwc : avr_regbit_t , pub twsr : avr_regbit_t , pub twps : avr_regbit_t , pub twi : avr_int_vector_t , pub state : u8 , pub peer_addr : u8 , pub next_twstate : u8 , } # [test] fn bindgen_test_layout_avr_twi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_twi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_twi_t > () , 232usize , concat ! ("Size of: " , stringify ! (avr_twi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_twi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_twi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twbr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twbr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twar) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twamr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twamr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_twdr) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (r_twdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twea) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twea))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsta) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsto) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twwc) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twwc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twsr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twps) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . twi) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (twi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . peer_addr) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (peer_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_twstate) as usize - ptr as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (avr_twi_t) , "::" , stringify ! (next_twstate))) ; } extern "C" { pub fn avr_twi_init (avr : * mut avr_t , port : * mut avr_twi_t) ; } extern "C" { pub fn avr_twi_irq_msg (msg : u8 , addr : u8 , data : u8) -> u32 ; } pub const IOPORT_IRQ_PIN0 : _bindgen_ty_36 = 0 ; pub const IOPORT_IRQ_PIN1 : _bindgen_ty_36 = 1 ; pub const IOPORT_IRQ_PIN2 : _bindgen_ty_36 = 2 ; pub const IOPORT_IRQ_PIN3 : _bindgen_ty_36 = 3 ; pub const IOPORT_IRQ_PIN4 : _bindgen_ty_36 = 4 ; pub const IOPORT_IRQ_PIN5 : _bindgen_ty_36 = 5 ; pub const IOPORT_IRQ_PIN6 : _bindgen_ty_36 = 6 ; pub const IOPORT_IRQ_PIN7 : _bindgen_ty_36 = 7 ; pub const IOPORT_IRQ_PIN_ALL : _bindgen_ty_36 = 8 ; pub const IOPORT_IRQ_PIN_ALL_IN : _bindgen_ty_36 = 9 ; pub const IOPORT_IRQ_DIRECTION_ALL : _bindgen_ty_36 = 10 ; pub const IOPORT_IRQ_REG_PORT : _bindgen_ty_36 = 11 ; pub const IOPORT_IRQ_REG_PIN : _bindgen_ty_36 = 12 ; pub const IOPORT_IRQ_COUNT : _bindgen_ty_36 = 13 ; pub type _bindgen_ty_36 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_getirq_t { pub bit : avr_regbit_t , pub irq : [* mut avr_irq_t ; 8usize] , } # [test] fn bindgen_test_layout_avr_ioport_getirq_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_getirq_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_getirq_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_getirq_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_getirq_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (bit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irq) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_getirq_t) , "::" , stringify ! (irq))) ; } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_state_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub __bindgen_padding_0 : u32 , } # [test] fn bindgen_test_layout_avr_ioport_state_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_state_t))) ; } impl avr_ioport_state_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn port (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_port (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn ddr (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_ddr (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (23usize , 8u8) as u64) } } # [inline] pub fn set_pin (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , port : :: std :: os :: raw :: c_ulong , ddr : :: std :: os :: raw :: c_ulong , pin : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let port : u64 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let ddr : u64 = unsafe { :: std :: mem :: transmute (ddr) } ; ddr as u64 }) ; __bindgen_bitfield_unit . set (23usize , 8u8 , { let pin : u64 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_external_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_avr_ioport_external_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Size of: " , stringify ! (avr_ioport_external_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_external_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_external_t))) ; } impl avr_ioport_external_t { # [inline] pub fn name (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 7u8) as u64) } } # [inline] pub fn set_name (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 7u8 , val as u64) } } # [inline] pub fn mask (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (7usize , 8u8) as u64) } } # [inline] pub fn set_mask (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 8u8 , val as u64) } } # [inline] pub fn value (& self) -> :: std :: os :: raw :: c_ulong { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (15usize , 8u8) as u64) } } # [inline] pub fn set_value (& mut self , val : :: std :: os :: raw :: c_ulong) { unsafe { let val : u64 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (name : :: std :: os :: raw :: c_ulong , mask : :: std :: os :: raw :: c_ulong , value : :: std :: os :: raw :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 7u8 , { let name : u64 = unsafe { :: std :: mem :: transmute (name) } ; name as u64 }) ; __bindgen_bitfield_unit . set (7usize , 8u8 , { let mask : u64 = unsafe { :: std :: mem :: transmute (mask) } ; mask as u64 }) ; __bindgen_bitfield_unit . set (15usize , 8u8 , { let value : u64 = unsafe { :: std :: mem :: transmute (value) } ; value as u64 }) ; __bindgen_bitfield_unit } } # [doc = " pin structure"] # [repr (C)] # [repr (align (2))] # [derive (Debug , Copy , Clone)] pub struct avr_iopin_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , } # [test] fn bindgen_test_layout_avr_iopin_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_iopin_t > () , 2usize , concat ! ("Size of: " , stringify ! (avr_iopin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_iopin_t > () , 2usize , concat ! ("Alignment of " , stringify ! (avr_iopin_t))) ; } impl avr_iopin_t { # [inline] pub fn port (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_port (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn pin (& self) -> u16 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u16) } } # [inline] pub fn set_pin (& mut self , val : u16) { unsafe { let val : u16 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (port : u16 , pin : u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let port : u16 = unsafe { :: std :: mem :: transmute (port) } ; port as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let pin : u16 = unsafe { :: std :: mem :: transmute (pin) } ; pin as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub r_port : avr_io_addr_t , pub r_ddr : avr_io_addr_t , pub r_pin : avr_io_addr_t , pub pud : avr_regbit_t , pub pcint : avr_int_vector_t , pub r_pcint : avr_io_addr_t , pub mask : u8 , pub shift : i8 , pub irqing : u8 , pub external : avr_ioport_t__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_ioport_t__bindgen_ty_1 { pub pull_mask : u8 , pub pull_value : u8 , } # [test] fn bindgen_test_layout_avr_ioport_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_mask) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pull_value) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t__bindgen_ty_1) , "::" , stringify ! (pull_value))) ; } # [test] fn bindgen_test_layout_avr_ioport_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_ioport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_ioport_t > () , 200usize , concat ! ("Size of: " , stringify ! (avr_ioport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_ioport_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_ioport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_port) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ddr) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_ddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pin) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pud) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pcint) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pcint) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (r_pcint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 194usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shift) as usize - ptr as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . irqing) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (irqing))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external) as usize - ptr as usize } , 197usize , concat ! ("Offset of field: " , stringify ! (avr_ioport_t) , "::" , stringify ! (external))) ; } extern "C" { pub fn avr_ioport_init (avr : * mut avr_t , port : * mut avr_ioport_t) ; } # [doc = " SPI Module initialization and state structure"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_bitbang_t { # [doc = "< avr we are attached to"] pub avr : * mut avr_t , # [doc = "< bit-bang enabled flag"] pub enabled : u8 , # [doc = "< generate clock and write to clock pin (if available) -> master / slave mode"] pub clk_generate : u8 , # [doc = "< clock polarity, base (inactive) value of clock"] pub clk_pol : u8 , # [doc = "< clock phase / data sampling edge"] pub clk_phase : u8 , # [doc = "< cycles per clock period - must be multiple of 2! (used if clk_generate is enabled)"] pub clk_cycles : u32 , # [doc = "< data order / shift"] pub data_order : u8 , # [doc = "< size of buffer in bits (1...32)"] pub buffer_size : u8 , pub callback_param : * mut :: std :: os :: raw :: c_void , # [doc = "< callback function to notify about bit read"] pub callback_bit_read : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about bit write"] pub callback_bit_write : :: std :: option :: Option < unsafe extern "C" fn (bit : u8 , param : * mut :: std :: os :: raw :: c_void) > , # [doc = "< callback function to notify about a complete transfer"] pub callback_transfer_finished : :: std :: option :: Option < unsafe extern "C" fn (data : u32 , param : * mut :: std :: os :: raw :: c_void) -> u32 > , # [doc = "< clock pin (optional)"] pub p_clk : avr_iopin_t , # [doc = "< data in pin"] pub p_in : avr_iopin_t , # [doc = "< data out pin"] pub p_out : avr_iopin_t , # [doc = "< data buffer"] pub data : u32 , # [doc = "< internal clock edge count"] pub clk_count : i8 , } # [test] fn bindgen_test_layout_avr_bitbang_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_bitbang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_bitbang_t > () , 72usize , concat ! ("Size of: " , stringify ! (avr_bitbang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_bitbang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_bitbang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (avr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_generate) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_generate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_pol) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_pol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_phase) as usize - ptr as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_phase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_cycles) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_order) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data_order))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_size) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_param) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_param))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_read) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_bit_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_bit_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback_transfer_finished) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (callback_transfer_finished))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_clk) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_clk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_in) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_out) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (p_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clk_count) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (avr_bitbang_t) , "::" , stringify ! (clk_count))) ; } extern "C" { # [doc = " reset bitbang sub-module\n\n @param avr\tavr attached to\n @param p\t\tbitbang structure"] pub fn avr_bitbang_reset (avr : * mut avr_t , p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " start bitbang transfer\n\n buffers should be written / cleared in advanced\n timers and interrupts are connected\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_start (p : * mut avr_bitbang_t) ; } extern "C" { # [doc = " stop bitbang transfer\n\n timers and interrupts are disabled\n\n @param p\t\t\tbitbang structure"] pub fn avr_bitbang_stop (p : * mut avr_bitbang_t) ; } pub const USB_IRQ_ATTACH : _bindgen_ty_37 = 0 ; pub const USB_IRQ_COUNT : _bindgen_ty_37 = 1 ; pub type _bindgen_ty_37 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_io_usb { pub pipe : u8 , pub sz : u32 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_avr_io_usb () { const UNINIT : :: std :: mem :: MaybeUninit < avr_io_usb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_io_usb > () , 16usize , concat ! ("Size of: " , stringify ! (avr_io_usb))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_io_usb > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_io_usb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pipe) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (pipe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_io_usb) , "::" , stringify ! (buf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_usb_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub usbrf : avr_regbit_t , pub r_usbcon : avr_io_addr_t , pub r_pllcsr : avr_io_addr_t , pub usb_com_vect : u8 , pub usb_gen_vect : u8 , pub state : * mut usb_internal_state , } # [test] fn bindgen_test_layout_avr_usb_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_usb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_usb_t > () , 104usize , concat ! ("Size of: " , stringify ! (avr_usb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_usb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_usb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usbrf) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usbrf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_usbcon) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_usbcon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_pllcsr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (r_pllcsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_com_vect) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_com_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usb_gen_vect) as usize - ptr as usize } , 89usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (usb_gen_vect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_usb_t) , "::" , stringify ! (state))) ; } extern "C" { pub fn avr_usb_init (avr : * mut avr_t , port : * mut avr_usb_t) ; } # [repr (C)] # [derive (Debug)] pub struct argv_t { pub size : u32 , pub argc : u32 , pub line : * mut :: std :: os :: raw :: c_char , pub argv : __IncompleteArrayField < * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_argv_t () { const UNINIT : :: std :: mem :: MaybeUninit < argv_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < argv_t > () , 16usize , concat ! ("Size of: " , stringify ! (argv_t))) ; assert_eq ! (:: std :: mem :: align_of :: < argv_t > () , 8usize , concat ! ("Alignment of " , stringify ! (argv_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (argv_t) , "::" , stringify ! (argv))) ; } pub type argv_p = * mut argv_t ; extern "C" { pub fn argv_parse (argv : argv_p , line : * mut :: std :: os :: raw :: c_char) -> argv_p ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_lin_t { pub io : avr_io_t , pub r_linbtr : avr_io_addr_t , pub r_linbrrh : avr_io_addr_t , pub r_linbrrl : avr_io_addr_t , pub lena : avr_regbit_t , pub ldisr : avr_regbit_t , pub lbt : avr_regbit_t , pub uart : avr_uart_t , } # [test] fn bindgen_test_layout_avr_lin_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_lin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_lin_t > () , 720usize , concat ! ("Size of: " , stringify ! (avr_lin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_lin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_lin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbtr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrh) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_linbrrl) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (r_linbrrl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lena) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ldisr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (ldisr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lbt) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (lbt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uart) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_lin_t) , "::" , stringify ! (uart))) ; } extern "C" { pub fn avr_lin_init (avr : * mut avr_t , port : * mut avr_lin_t) ; } pub const AVR_TIMER_COMPA : _bindgen_ty_38 = 0 ; pub const AVR_TIMER_COMPB : _bindgen_ty_38 = 1 ; pub const AVR_TIMER_COMPC : _bindgen_ty_38 = 2 ; pub const AVR_TIMER_COMP_COUNT : _bindgen_ty_38 = 3 ; pub type _bindgen_ty_38 = :: std :: os :: raw :: c_uint ; pub const TIMER_IRQ_OUT_PWM0 : _bindgen_ty_39 = 0 ; pub const TIMER_IRQ_OUT_PWM1 : _bindgen_ty_39 = 1 ; pub const TIMER_IRQ_OUT_PWM2 : _bindgen_ty_39 = 2 ; pub const TIMER_IRQ_IN_ICP : _bindgen_ty_39 = 3 ; pub const TIMER_IRQ_OUT_COMP : _bindgen_ty_39 = 4 ; pub const TIMER_IRQ_COUNT : _bindgen_ty_39 = 7 ; pub type _bindgen_ty_39 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_none : _bindgen_ty_40 = 0 ; pub const avr_timer_wgm_normal : _bindgen_ty_40 = 1 ; pub const avr_timer_wgm_ctc : _bindgen_ty_40 = 2 ; pub const avr_timer_wgm_pwm : _bindgen_ty_40 = 3 ; pub const avr_timer_wgm_fast_pwm : _bindgen_ty_40 = 4 ; pub const avr_timer_wgm_fc_pwm : _bindgen_ty_40 = 5 ; pub type _bindgen_ty_40 = :: std :: os :: raw :: c_uint ; pub const avr_timer_com_normal : _bindgen_ty_41 = 0 ; pub const avr_timer_com_toggle : _bindgen_ty_41 = 1 ; pub const avr_timer_com_clear : _bindgen_ty_41 = 2 ; pub const avr_timer_com_set : _bindgen_ty_41 = 3 ; pub type _bindgen_ty_41 = :: std :: os :: raw :: c_uint ; pub const avr_timer_wgm_reg_constant : _bindgen_ty_42 = 0 ; pub const avr_timer_wgm_reg_ocra : _bindgen_ty_42 = 1 ; pub const avr_timer_wgm_reg_icr : _bindgen_ty_42 = 2 ; pub type _bindgen_ty_42 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct avr_timer_wgm_t { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_avr_timer_wgm_t () { assert_eq ! (:: std :: mem :: size_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Size of: " , stringify ! (avr_timer_wgm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_wgm_t > () , 4usize , concat ! ("Alignment of " , stringify ! (avr_timer_wgm_t))) ; } impl avr_timer_wgm_t { # [inline] pub fn top (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_top (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn bottom (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_bottom (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn size (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (16usize , 8u8) as u32) } } # [inline] pub fn set_size (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 8u8 , val as u64) } } # [inline] pub fn kind (& self) -> u32 { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_kind (& mut self , val : u32) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (top : u32 , bottom : u32 , size : u32 , kind : u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let top : u32 = unsafe { :: std :: mem :: transmute (top) } ; top as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let bottom : u32 = unsafe { :: std :: mem :: transmute (bottom) } ; bottom as u64 }) ; __bindgen_bitfield_unit . set (16usize , 8u8 , { let size : u32 = unsafe { :: std :: mem :: transmute (size) } ; size as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let kind : u32 = unsafe { :: std :: mem :: transmute (kind) } ; kind as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_comp_t { pub interrupt : avr_int_vector_t , pub timer : * mut avr_timer_t , pub r_ocr : avr_io_addr_t , pub r_ocrh : avr_io_addr_t , pub com : avr_regbit_t , pub com_pin : avr_regbit_t , pub comp_cycles : u64 , pub foc : avr_regbit_t , } # [test] fn bindgen_test_layout_avr_timer_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_comp_t > () , 144usize , concat ! ("Size of: " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timer) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocr) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_ocrh) as usize - ptr as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (r_ocrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . com_pin) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (com_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_cycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (comp_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foc) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (avr_timer_comp_t) , "::" , stringify ! (foc))) ; } pub type avr_timer_comp_p = * mut avr_timer_comp_t ; pub const avr_timer_trace_ocr : _bindgen_ty_43 = 1 ; pub const avr_timer_trace_tcnt : _bindgen_ty_43 = 2 ; pub const avr_timer_trace_compa : _bindgen_ty_43 = 256 ; pub const avr_timer_trace_compb : _bindgen_ty_43 = 512 ; pub const avr_timer_trace_compc : _bindgen_ty_43 = 1024 ; pub type _bindgen_ty_43 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_timer_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub trace : u32 , pub disabled : avr_regbit_t , pub r_tcnt : avr_io_addr_t , pub r_icr : avr_io_addr_t , pub r_tcnth : avr_io_addr_t , pub r_icrh : avr_io_addr_t , pub wgm : [avr_regbit_t ; 4usize] , pub wgm_op : [avr_timer_wgm_t ; 16usize] , pub mode : avr_timer_wgm_t , pub wgm_op_mode_kind : :: std :: os :: raw :: c_int , pub wgm_op_mode_size : u32 , pub as2 : avr_regbit_t , pub cs : [avr_regbit_t ; 4usize] , pub cs_div : [u8 ; 16usize] , pub cs_div_value : u32 , pub ext_clock_pin : avr_regbit_t , pub ext_clock_flags : u8 , pub ext_clock : f32 , pub icp : avr_regbit_t , pub ices : avr_regbit_t , pub comp : [avr_timer_comp_t ; 3usize] , pub overflow : avr_int_vector_t , pub icr : avr_int_vector_t , pub tov_cycles : u64 , pub tov_cycles_fract : f32 , pub phase_accumulator : f32 , pub tov_base : u64 , pub tov_top : u16 , } # [test] fn bindgen_test_layout_avr_timer_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_timer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_timer_t > () , 920usize , concat ! ("Size of: " , stringify ! (avr_timer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_timer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_timer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnt) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icr) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_tcnth) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_tcnth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_icrh) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (r_icrh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_kind) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wgm_op_mode_size) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (wgm_op_mode_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . as2) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (as2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs) as usize - ptr as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div) as usize - ptr as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_div_value) as usize - ptr as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (cs_div_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_pin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_pin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock_flags) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext_clock) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ext_clock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icp) as usize - ptr as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ices) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (ices))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (comp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (overflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icr) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (icr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_cycles_fract) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_cycles_fract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . phase_accumulator) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (phase_accumulator))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_base) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tov_top) as usize - ptr as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (avr_timer_t) , "::" , stringify ! (tov_top))) ; } extern "C" { pub fn avr_timer_init (avr : * mut avr_t , port : * mut avr_timer_t) ; } pub const SPI_IRQ_INPUT : _bindgen_ty_44 = 0 ; pub const SPI_IRQ_OUTPUT : _bindgen_ty_44 = 1 ; pub const SPI_IRQ_COUNT : _bindgen_ty_44 = 2 ; pub type _bindgen_ty_44 = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_spi_t { pub io : avr_io_t , pub name : :: std :: os :: raw :: c_char , pub disabled : avr_regbit_t , pub r_spdr : avr_io_addr_t , pub r_spcr : avr_io_addr_t , pub r_spsr : avr_io_addr_t , pub spe : avr_regbit_t , pub mstr : avr_regbit_t , pub spr : [avr_regbit_t ; 4usize] , pub spi : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_spi_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_spi_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_spi_t > () , 216usize , concat ! ("Size of: " , stringify ! (avr_spi_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_spi_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_spi_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disabled) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spdr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spcr) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spcr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_spsr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (r_spsr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spe) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mstr) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (mstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spi) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_spi_t) , "::" , stringify ! (spi))) ; } extern "C" { pub fn avr_spi_init (avr : * mut avr_t , port : * mut avr_spi_t) ; } pub const AVR_MMCU_TAG : _bindgen_ty_45 = 0 ; pub const AVR_MMCU_TAG_NAME : _bindgen_ty_45 = 1 ; pub const AVR_MMCU_TAG_FREQUENCY : _bindgen_ty_45 = 2 ; pub const AVR_MMCU_TAG_VCC : _bindgen_ty_45 = 3 ; pub const AVR_MMCU_TAG_AVCC : _bindgen_ty_45 = 4 ; pub const AVR_MMCU_TAG_AREF : _bindgen_ty_45 = 5 ; pub const AVR_MMCU_TAG_LFUSE : _bindgen_ty_45 = 6 ; pub const AVR_MMCU_TAG_HFUSE : _bindgen_ty_45 = 7 ; pub const AVR_MMCU_TAG_EFUSE : _bindgen_ty_45 = 8 ; pub const AVR_MMCU_TAG_SIGNATURE : _bindgen_ty_45 = 9 ; pub const AVR_MMCU_TAG_SIMAVR_COMMAND : _bindgen_ty_45 = 10 ; pub const AVR_MMCU_TAG_SIMAVR_CONSOLE : _bindgen_ty_45 = 11 ; pub const AVR_MMCU_TAG_VCD_FILENAME : _bindgen_ty_45 = 12 ; pub const AVR_MMCU_TAG_VCD_PERIOD : _bindgen_ty_45 = 13 ; pub const AVR_MMCU_TAG_VCD_TRACE : _bindgen_ty_45 = 14 ; pub const AVR_MMCU_TAG_VCD_PORTPIN : _bindgen_ty_45 = 15 ; pub const AVR_MMCU_TAG_VCD_IRQ : _bindgen_ty_45 = 16 ; pub const AVR_MMCU_TAG_VCD_SRAM_8 : _bindgen_ty_45 = 17 ; pub const AVR_MMCU_TAG_VCD_SRAM_16 : _bindgen_ty_45 = 18 ; pub const AVR_MMCU_TAG_VCD_IO_IRQ : _bindgen_ty_45 = 19 ; pub const AVR_MMCU_TAG_PORT_EXTERNAL_PULL : _bindgen_ty_45 = 20 ; pub const AVR_MMCU_TAG_PORT_NO_PULL : _bindgen_ty_45 = 21 ; pub type _bindgen_ty_45 = :: std :: os :: raw :: c_uint ; pub const SIMAVR_CMD_NONE : _bindgen_ty_46 = 0 ; pub const SIMAVR_CMD_VCD_START_TRACE : _bindgen_ty_46 = 1 ; pub const SIMAVR_CMD_VCD_STOP_TRACE : _bindgen_ty_46 = 2 ; pub const SIMAVR_CMD_UART_LOOPBACK : _bindgen_ty_46 = 3 ; pub const SIMAVR_CMD_EXIT_CODE_0 : _bindgen_ty_46 = 4 ; pub const SIMAVR_CMD_EXIT_CODE_1 : _bindgen_ty_46 = 5 ; pub type _bindgen_ty_46 = :: std :: os :: raw :: c_uint ; pub const mem_type_FLASH : mem_type = 0 ; pub const mem_type_DATA : mem_type = 1 ; pub const mem_type_EEPROM : mem_type = 2 ; pub const mem_type_FUSES : mem_type = 3 ; pub const mem_type_LOCK : mem_type = 4 ; pub const mem_type_UNKNOWN : mem_type = 5 ; pub type mem_type = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fw_chunk { pub type_ : mem_type , pub addr : u32 , pub size : u32 , pub fill_size : u32 , pub next : * mut fw_chunk , pub data : [u8 ; 1usize] , } # [test] fn bindgen_test_layout_fw_chunk () { const UNINIT : :: std :: mem :: MaybeUninit < fw_chunk > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < fw_chunk > () , 32usize , concat ! ("Size of: " , stringify ! (fw_chunk))) ; assert_eq ! (:: std :: mem :: align_of :: < fw_chunk > () , 8usize , concat ! ("Alignment of " , stringify ! (fw_chunk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fill_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (fill_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fw_chunk) , "::" , stringify ! (data))) ; } pub type fw_chunk_t = fw_chunk ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t { pub mmcu : [:: std :: os :: raw :: c_char ; 64usize] , pub frequency : u32 , pub vcc : u32 , pub avcc : u32 , pub aref : u32 , pub tracename : [:: std :: os :: raw :: c_char ; 128usize] , pub traceperiod : u32 , pub tracecount : :: std :: os :: raw :: c_int , pub trace : [elf_firmware_t__bindgen_ty_1 ; 32usize] , pub external_state : [elf_firmware_t__bindgen_ty_2 ; 8usize] , pub command_register_addr : u16 , pub console_register_addr : u16 , pub flashbase : u32 , pub chunks : * mut fw_chunk_t , pub symbol : * mut * mut avr_symbol_t , pub symbolcount : u32 , pub highest_data_symbol : u32 , pub dwarf_file : * mut :: std :: os :: raw :: c_char , pub file_name : * mut :: std :: os :: raw :: c_char , pub options : simavr_options , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_1 { pub kind : u8 , pub mask : u8 , pub addr : u32 , pub name : [:: std :: os :: raw :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_1) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf_firmware_t__bindgen_ty_2 { pub port : :: std :: os :: raw :: c_char , pub mask : u8 , pub value : u8 , } # [test] fn bindgen_test_layout_elf_firmware_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t__bindgen_ty_2 > () , 3usize , concat ! ("Size of: " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t__bindgen_ty_2) , "::" , stringify ! (value))) ; } # [test] fn bindgen_test_layout_elf_firmware_t () { const UNINIT : :: std :: mem :: MaybeUninit < elf_firmware_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < elf_firmware_t > () , 2600usize , concat ! ("Size of: " , stringify ! (elf_firmware_t))) ; assert_eq ! (:: std :: mem :: align_of :: < elf_firmware_t > () , 8usize , concat ! ("Alignment of " , stringify ! (elf_firmware_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmcu) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (mmcu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frequency) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vcc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (vcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . avcc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (avcc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aref) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (aref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracename) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traceperiod) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (traceperiod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracecount) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (tracecount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . external_state) as usize - ptr as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (external_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . command_register_addr) as usize - ptr as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (command_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . console_register_addr) as usize - ptr as usize } , 2546usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (console_register_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flashbase) as usize - ptr as usize } , 2548usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (flashbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chunks) as usize - ptr as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbolcount) as usize - ptr as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (symbolcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highest_data_symbol) as usize - ptr as usize } , 2572usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (highest_data_symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwarf_file) as usize - ptr as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (dwarf_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_name) as usize - ptr as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (elf_firmware_t) , "::" , stringify ! (options))) ; } extern "C" { pub fn elf_read_firmware (file : * const :: std :: os :: raw :: c_char , firmware : * mut elf_firmware_t) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn avr_load_firmware (avr : * mut avr_t , firmware : * mut elf_firmware_t) ; } extern "C" { pub fn sim_default_mcu (fp : * mut elf_firmware_t , filename : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn make_avr_from_file (filename : * const :: std :: os :: raw :: c_char) -> * mut avr_t ; } extern "C" { pub fn avr_read_dwarf (avr : * mut avr_t , filename : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_t { pub io : avr_io_t , pub eeprom : * mut u8 , pub size : u16 , pub r_eearh : u8 , pub r_eearl : u8 , pub r_eedr : u8 , pub r_eecr : u8 , pub eepm : [avr_regbit_t ; 4usize] , pub eempe : avr_regbit_t , pub eepe : avr_regbit_t , pub eere : avr_regbit_t , pub ready : avr_int_vector_t , } # [test] fn bindgen_test_layout_avr_eeprom_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_t > () , 224usize , concat ! ("Size of: " , stringify ! (avr_eeprom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eeprom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eeprom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearh) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eearl) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eearl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eedr) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eedr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_eecr) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (r_eecr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepm) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eempe) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eempe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eepe) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eepe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eere) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (eere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_t) , "::" , stringify ! (ready))) ; } extern "C" { pub fn avr_eeprom_init (avr : * mut avr_t , port : * mut avr_eeprom_t) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_eeprom_desc_t { pub ee : * mut u8 , pub offset : u16 , pub size : u32 , } # [test] fn bindgen_test_layout_avr_eeprom_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < avr_eeprom_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < avr_eeprom_desc_t > () , 16usize , concat ! ("Size of: " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < avr_eeprom_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (avr_eeprom_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ee) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (ee))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (avr_eeprom_desc_t) , "::" , stringify ! (size))) ; } # [doc = "!< list of hooks to be notified"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_irq_hook_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct avr_gdb_t { pub _address : u8 , } 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))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct usb_internal_state { pub _address : u8 , }
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling simavr-ffi v1.2.7 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/simavr-ffi-0515f8f4cc440acb/out/bindings.rs:3:300085
[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]   |
[WARN] too much data in the log, truncating it
