objc2_virtualization/generated/
VZVirtioConsoleDeviceConfiguration.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9extern_class!(
10    /// Virtio Console Device
11    ///
12    /// This console device enables communication between the host and the guest using console ports through the Virtio interface.
13    ///
14    /// The device sets up one or more ports via VZVirtioConsolePortConfiguration on the Virtio console device.
15    ///
16    /// See: VZVirtioConsolePortConfiguration
17    ///
18    /// See: VZVirtualMachineConfiguration.consoleDevices
19    ///
20    /// See also [Apple's documentation](https://developer.apple.com/documentation/virtualization/vzvirtioconsoledeviceconfiguration?language=objc)
21    #[unsafe(super(VZConsoleDeviceConfiguration, NSObject))]
22    #[derive(Debug, PartialEq, Eq, Hash)]
23    #[cfg(feature = "VZConsoleDeviceConfiguration")]
24    pub struct VZVirtioConsoleDeviceConfiguration;
25);
26
27#[cfg(feature = "VZConsoleDeviceConfiguration")]
28extern_conformance!(
29    unsafe impl NSCopying for VZVirtioConsoleDeviceConfiguration {}
30);
31
32#[cfg(feature = "VZConsoleDeviceConfiguration")]
33unsafe impl CopyingHelper for VZVirtioConsoleDeviceConfiguration {
34    type Result = Self;
35}
36
37#[cfg(feature = "VZConsoleDeviceConfiguration")]
38extern_conformance!(
39    unsafe impl NSObjectProtocol for VZVirtioConsoleDeviceConfiguration {}
40);
41
42#[cfg(feature = "VZConsoleDeviceConfiguration")]
43impl VZVirtioConsoleDeviceConfiguration {
44    extern_methods!(
45        #[unsafe(method(init))]
46        #[unsafe(method_family = init)]
47        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
48
49        #[cfg(feature = "VZVirtioConsolePortConfigurationArray")]
50        /// The console ports to be configured for this console device.
51        #[unsafe(method(ports))]
52        #[unsafe(method_family = none)]
53        pub unsafe fn ports(&self) -> Retained<VZVirtioConsolePortConfigurationArray>;
54    );
55}
56
57/// Methods declared on superclass `VZConsoleDeviceConfiguration`.
58#[cfg(feature = "VZConsoleDeviceConfiguration")]
59impl VZVirtioConsoleDeviceConfiguration {
60    extern_methods!(
61        #[unsafe(method(new))]
62        #[unsafe(method_family = new)]
63        pub unsafe fn new() -> Retained<Self>;
64    );
65}