]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
common: add prelude
authorPaolo Bonzini <pbonzini@redhat.com>
Tue, 4 Nov 2025 15:37:24 +0000 (16:37 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Sat, 27 Dec 2025 09:11:09 +0000 (10:11 +0100)
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
rust/common/meson.build
rust/common/src/lib.rs
rust/common/src/prelude.rs [new file with mode: 0644]
rust/hw/char/pl011/src/device.rs
rust/hw/timer/hpet/src/device.rs

index 4b1cd35f639f816034395e61542f82e8025abb04..57091b18fc4be921f5b95dc7c4daec747dacd3d5 100644 (file)
@@ -4,18 +4,7 @@ _common_cfg = run_command(rustc_args,
 
 _common_rs = static_library(
   'common',
-  structured_sources(
-    [
-      'src/lib.rs',
-      'src/assertions.rs',
-      'src/bitops.rs',
-      'src/callbacks.rs',
-      'src/errno.rs',
-      'src/opaque.rs',
-      'src/uninit.rs',
-      'src/zeroable.rs',
-    ],
-  ),
+  'src/lib.rs',
   rust_args: _common_cfg,
   dependencies: [libc_rs, qemu_macros],
 )
index 8311bf945da84a36011ee89f93a44485da0a970e..6093d01a388c1d3962de62f22f7875955db3e8fd 100644 (file)
@@ -15,6 +15,11 @@ pub use errno::Errno;
 pub mod opaque;
 pub use opaque::{Opaque, Wrapper};
 
+// preserve one-item-per-"use" syntax, it is clearer
+// for prelude-like modules
+#[rustfmt::skip]
+pub mod prelude;
+
 pub mod uninit;
 pub use uninit::MaybeUninitField;
 
diff --git a/rust/common/src/prelude.rs b/rust/common/src/prelude.rs
new file mode 100644 (file)
index 0000000..7d38ea1
--- /dev/null
@@ -0,0 +1,9 @@
+//! Essential types and traits intended for blanket imports.
+
+pub use crate::bitops::IntegerExt;
+pub use crate::uninit::MaybeUninitField;
+
+// Re-export commonly used macros
+pub use crate::static_assert;
+pub use crate::uninit_field_mut;
+pub use qemu_macros::TryInto;
index 18f40fdc58b8caed2bd63c9f3467d14bbd27229f..b7e8e393d2e91847ea870bca6bc0888d455ac602 100644 (file)
@@ -6,7 +6,7 @@ use std::{ffi::CStr, mem::size_of};
 
 use bql::BqlRefCell;
 use chardev::{CharFrontend, Chardev, Event};
-use common::{static_assert, uninit_field_mut};
+use common::prelude::*;
 use hwcore::{
     Clock, ClockEvent, DeviceImpl, DeviceMethods, DeviceState, IRQState, InterruptSource,
     ResetType, ResettablePhasesImpl, SysBusDevice, SysBusDeviceImpl, SysBusDeviceMethods,
index 6e9c004ecae97d7c1188eb09b7934a38686a1ccd..e9c7afa24d58690d578c37d4756d48af539b011a 100644 (file)
@@ -11,7 +11,7 @@ use std::{
 };
 
 use bql::{BqlCell, BqlRefCell};
-use common::{bitops::IntegerExt, uninit_field_mut};
+use common::prelude::*;
 use hwcore::{
     DeviceImpl, DeviceMethods, DeviceState, InterruptSource, ResetType, ResettablePhasesImpl,
     SysBusDevice, SysBusDeviceImpl, SysBusDeviceMethods,