master
rs 39 lines 1.17 KB
Raw
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 unnecessary_transmutes,
10 unsafe_op_in_unsafe_fn,
11 clippy::pedantic,
12 clippy::restriction,
13 clippy::style,
14 clippy::missing_const_for_fn,
15 clippy::ptr_offset_with_cast,
16 clippy::useless_transmute,
17 clippy::missing_safety_doc,
18 clippy::too_many_arguments
19 )]
20
21 use common::Zeroable;
22 use glib_sys::{gboolean, guint, GIOCondition, GMainContext, GSource, GSourceFunc};
23 use qom_sys::{Object, ObjectClass};
24 use util_sys::{Error, IOCanReadHandler, IOReadHandler, QemuOpts};
25
26 #[cfg(MESON)]
27 include!("bindings.inc.rs");
28
29 #[cfg(not(MESON))]
30 include!(concat!(env!("OUT_DIR"), "/bindings.inc.rs"));
31
32 // SAFETY: these are implemented in C; the bindings need to assert that the
33 // BQL is taken, either directly or via `BqlCell` and `BqlRefCell`.
34 // When bindings for character devices are introduced, this can be
35 // moved to the Opaque<> wrapper in src/chardev.rs.
36 unsafe impl Send for CharFrontend {}
37 unsafe impl Sync for CharFrontend {}
38
39 unsafe impl Zeroable for CharFrontend {}