pub trait InventoryBackend {
// Required methods
fn devices(&self) -> Result<Vec<DeviceInfo>, Outcome>;
fn resources(&self) -> Result<Resources, Outcome>;
fn bound_driver(
&self,
device: &UnitId,
) -> Result<Option<DriverRef>, Outcome>;
fn bind(&self, device: &UnitId, driver: &DriverRef, op: &OpId) -> Outcome;
fn unbind(&self, device: &UnitId, op: &OpId) -> Outcome;
}