diff options
| author | Paolo Bonzini <pbonzini@redhat.com> | 2024-11-29 10:46:44 +0100 |
|---|---|---|
| committer | Paolo Bonzini <pbonzini@redhat.com> | 2025-01-10 23:34:44 +0100 |
| commit | 559a779c6aa309853474240b01fcc2beff1f04ca (patch) | |
| tree | 0c7b86f82cc0b4ba6de435efc45158e9fec225ee /rust/qemu-api/src/irq.rs | |
| parent | 809c703a60240125eec16ec134f60793134b4f61 (diff) | |
| download | focaccia-qemu-559a779c6aa309853474240b01fcc2beff1f04ca.tar.gz focaccia-qemu-559a779c6aa309853474240b01fcc2beff1f04ca.zip | |
rust: qdev: expose inherited methods to subclasses of SysBusDevice
The ObjectDeref trait now provides all the magic that is required to fake inheritance. Replace the "impl SysBusDevice" block of qemu_api::sysbus with a trait, so that sysbus_init_irq() can be invoked as "self.init_irq()" without any intermediate upcast. Reviewed-by: Zhao Liu <zhao1.liu@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'rust/qemu-api/src/irq.rs')
| -rw-r--r-- | rust/qemu-api/src/irq.rs | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/rust/qemu-api/src/irq.rs b/rust/qemu-api/src/irq.rs index 6258141bdf..378e520295 100644 --- a/rust/qemu-api/src/irq.rs +++ b/rust/qemu-api/src/irq.rs @@ -24,8 +24,7 @@ use crate::{ /// /// Interrupts are implemented as a pointer to the interrupt "sink", which has /// type [`IRQState`]. A device exposes its source as a QOM link property using -/// a function such as -/// [`SysBusDevice::init_irq`](crate::sysbus::SysBusDevice::init_irq), and +/// a function such as [`SysBusDeviceMethods::init_irq`], and /// initially leaves the pointer to a NULL value, representing an unconnected /// interrupt. To connect it, whoever creates the device fills the pointer with /// the sink's `IRQState *`, for example using `sysbus_connect_irq`. Because |