objc2_virtualization/generated/
VZConsolePortConfiguration.rs

1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10extern_class!(
11    /// Base class for a console port configuration.
12    ///
13    /// VZConsolePortConfiguration should not be instantiated directly.
14    /// One of its subclasses like VZVirtioConsolePortConfiguration should be used instead.
15    ///
16    ///
17    /// See: VZVirtioConsolePortConfiguration
18    ///
19    /// See also [Apple's documentation](https://developer.apple.com/documentation/virtualization/vzconsoleportconfiguration?language=objc)
20    #[unsafe(super(NSObject))]
21    #[derive(Debug, PartialEq, Eq, Hash)]
22    pub struct VZConsolePortConfiguration;
23);
24
25unsafe impl NSCopying for VZConsolePortConfiguration {}
26
27unsafe impl CopyingHelper for VZConsolePortConfiguration {
28    type Result = Self;
29}
30
31unsafe impl NSObjectProtocol for VZConsolePortConfiguration {}
32
33impl VZConsolePortConfiguration {
34    extern_methods!(
35        #[unsafe(method(new))]
36        #[unsafe(method_family = new)]
37        pub unsafe fn new() -> Retained<Self>;
38
39        #[unsafe(method(init))]
40        #[unsafe(method_family = init)]
41        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
42
43        #[cfg(feature = "VZSerialPortAttachment")]
44        /// Console port attachment. Defines how the virtual machine's console port interfaces with the host system. Default is nil.
45        ///
46        /// See: VZFileHandleSerialPortAttachment
47        ///
48        /// See: VZFileSerialPortAttachment
49        ///
50        /// See: VZSpiceAgentPortAttachment
51        #[unsafe(method(attachment))]
52        #[unsafe(method_family = none)]
53        pub unsafe fn attachment(&self) -> Option<Retained<VZSerialPortAttachment>>;
54
55        #[cfg(feature = "VZSerialPortAttachment")]
56        /// Setter for [`attachment`][Self::attachment].
57        #[unsafe(method(setAttachment:))]
58        #[unsafe(method_family = none)]
59        pub unsafe fn setAttachment(&self, attachment: Option<&VZSerialPortAttachment>);
60    );
61}