]> git.ipfire.org Git - thirdparty/qemu.git/commit
rust: qdev: expose inherited methods to subclasses of SysBusDevice
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 29 Nov 2024 09:46:44 +0000 (10:46 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 10 Jan 2025 22:34:44 +0000 (23:34 +0100)
commit559a779c6aa309853474240b01fcc2beff1f04ca
tree0c7b86f82cc0b4ba6de435efc45158e9fec225ee
parent809c703a60240125eec16ec134f60793134b4f61
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>
rust/hw/char/pl011/src/device.rs
rust/qemu-api/src/irq.rs
rust/qemu-api/src/prelude.rs
rust/qemu-api/src/sysbus.rs