virtualization_rs/virtualization/
entropy_device.rs1use crate::base::Id;
4
5use objc::rc::StrongPtr;
6use objc::{class, msg_send, sel, sel_impl};
7
8pub trait VZEntropyDeviceConfiguration {
10 fn id(&self) -> Id;
11}
12
13pub struct VZVirtioEntropyDeviceConfiguration(StrongPtr);
15
16impl VZVirtioEntropyDeviceConfiguration {
17 pub fn new() -> VZVirtioEntropyDeviceConfiguration {
18 unsafe {
19 let p = StrongPtr::new(msg_send![class!(VZVirtioEntropyDeviceConfiguration), new]);
20 VZVirtioEntropyDeviceConfiguration(p)
21 }
22 }
23}
24
25impl VZEntropyDeviceConfiguration for VZVirtioEntropyDeviceConfiguration {
26 fn id(&self) -> Id {
27 *self.0
28 }
29}