1 // SPDX-License-Identifier: GPL-2.0-or-later 2 #![allow( 3 dead_code, 4 improper_ctypes_definitions, 5 improper_ctypes, 6 non_camel_case_types, 7 non_snake_case, 8 non_upper_case_globals, 9 unsafe_op_in_unsafe_fn, 10 clippy::pedantic, 11 clippy::restriction, 12 clippy::style, 13 clippy::missing_const_for_fn, 14 clippy::useless_transmute, 15 clippy::missing_safety_doc 16 )] 17 18 //! `bindgen`-generated declarations. 19 20 #[cfg(MESON)] 21 include!("bindings.inc.rs"); 22 23 #[cfg(not(MESON))] 24 include!(concat!(env!("OUT_DIR"), "/bindings.inc.rs")); 25 26 // SAFETY: these are implemented in C; the bindings need to assert that the 27 // BQL is taken, either directly or via `BqlCell` and `BqlRefCell`. 28 unsafe impl Send for BusState {} 29 unsafe impl Sync for BusState {} 30 31 unsafe impl Send for CharBackend {} 32 unsafe impl Sync for CharBackend {} 33 34 unsafe impl Send for Chardev {} 35 unsafe impl Sync for Chardev {} 36 37 unsafe impl Send for Clock {} 38 unsafe impl Sync for Clock {} 39 40 unsafe impl Send for DeviceState {} 41 unsafe impl Sync for DeviceState {} 42 43 unsafe impl Send for MemoryRegion {} 44 unsafe impl Sync for MemoryRegion {} 45 46 unsafe impl Send for ObjectClass {} 47 unsafe impl Sync for ObjectClass {} 48 49 unsafe impl Send for Object {} 50 unsafe impl Sync for Object {} 51 52 unsafe impl Send for SysBusDevice {} 53 unsafe impl Sync for SysBusDevice {} 54 55 // SAFETY: this is a pure data struct 56 unsafe impl Send for CoalescedMemoryRange {} 57 unsafe impl Sync for CoalescedMemoryRange {} 58 59 // SAFETY: these are constants and vtables; the Send and Sync requirements 60 // are deferred to the unsafe callbacks that they contain 61 unsafe impl Send for MemoryRegionOps {} 62 unsafe impl Sync for MemoryRegionOps {} 63 64 unsafe impl Send for Property {} 65 unsafe impl Sync for Property {} 66 67 unsafe impl Send for TypeInfo {} 68 unsafe impl Sync for TypeInfo {} 69 70 unsafe impl Send for VMStateDescription {} 71 unsafe impl Sync for VMStateDescription {} 72 73 unsafe impl Send for VMStateField {} 74 unsafe impl Sync for VMStateField {} 75 76 unsafe impl Send for VMStateInfo {} 77 unsafe impl Sync for VMStateInfo {} 78