system: add prelude

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini
2025-11-04 16:44:52 +01:00
parent 2ff035b7c7
commit c0eb26603d
5 changed files with 18 additions and 3 deletions

View File

@@ -10,7 +10,7 @@
use hwcore::{prelude::*, ClockEvent, IRQState};
use migration::{self, prelude::*};
use qom::{prelude::*, ObjectImpl, Owned, ParentField, ParentInit};
use system::{hwaddr, MemoryRegion, MemoryRegionOps, MemoryRegionOpsBuilder};
use system::prelude::*;
use util::prelude::*;
use crate::registers::{self, Interrupt, RegisterOffset};

View File

@@ -16,8 +16,9 @@
use migration::{self, prelude::*};
use qom::{prelude::*, ObjectImpl, ParentField, ParentInit};
use system::{
bindings::{address_space_memory, address_space_stl_le, hwaddr},
MemoryRegion, MemoryRegionOps, MemoryRegionOpsBuilder, MEMTXATTRS_UNSPECIFIED,
bindings::{address_space_memory, address_space_stl_le},
MEMTXATTRS_UNSPECIFIED,
prelude::*,
};
use util::prelude::*;

View File

@@ -30,6 +30,7 @@ _system_rs = static_library(
'src/lib.rs',
'src/bindings.rs',
'src/memory.rs',
'src/prelude.rs',
],
{'.': _system_bindings_inc_rs}
),

View File

@@ -4,3 +4,8 @@
mod memory;
pub use memory::*;
// preserve one-item-per-"use" syntax, it is clearer
// for prelude-like modules
#[rustfmt::skip]
pub mod prelude;

View File

@@ -0,0 +1,8 @@
//! Essential types and traits intended for blanket imports.
// Core memory types
pub use crate::memory::hwaddr;
pub use crate::memory::MemoryRegion;
pub use crate::memory::MemoryRegionOps;
pub use crate::memory::MemoryRegionOpsBuilder;
pub use crate::memory::MemTxAttrs;