1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
//! This file has been automatically generated by `objc2`'s `header-translator`.
//! DO NOT EDIT
use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern_class!(
/// Virtio Console Port
///
/// A console port is a two-way communication channel between a host VZSerialPortAttachment and a virtual machine console port. One or more console ports are attached to a Virtio console device.
///
/// An optional name may be set for a console port. A console port may also be configured for use as the system console.
///
/// See: VZConsolePortConfiguration
///
/// See: VZVirtualMachineConfiguration.consoleDevices
///
/// See also [Apple's documentation](https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfiguration?language=objc)
#[unsafe(super(VZConsolePortConfiguration, NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
#[cfg(feature = "VZConsolePortConfiguration")]
pub struct VZVirtioConsolePortConfiguration;
);
#[cfg(feature = "VZConsolePortConfiguration")]
extern_conformance!(
unsafe impl NSCopying for VZVirtioConsolePortConfiguration {}
);
#[cfg(feature = "VZConsolePortConfiguration")]
unsafe impl CopyingHelper for VZVirtioConsolePortConfiguration {
type Result = Self;
}
#[cfg(feature = "VZConsolePortConfiguration")]
extern_conformance!(
unsafe impl NSObjectProtocol for VZVirtioConsolePortConfiguration {}
);
#[cfg(feature = "VZConsolePortConfiguration")]
impl VZVirtioConsolePortConfiguration {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
/// The console port's name. The default behavior is to not use a name unless set.
#[unsafe(method(name))]
#[unsafe(method_family = none)]
pub unsafe fn name(&self) -> Option<Retained<NSString>>;
/// Setter for [`name`][Self::name].
///
/// This is [copied][objc2_foundation::NSCopying::copy] when set.
#[unsafe(method(setName:))]
#[unsafe(method_family = none)]
pub unsafe fn setName(&self, name: Option<&NSString>);
/// The console port may be marked for use as the system console. The default is false.
#[unsafe(method(isConsole))]
#[unsafe(method_family = none)]
pub unsafe fn isConsole(&self) -> bool;
/// Setter for [`isConsole`][Self::isConsole].
#[unsafe(method(setIsConsole:))]
#[unsafe(method_family = none)]
pub unsafe fn setIsConsole(&self, is_console: bool);
);
}
/// Methods declared on superclass `VZConsolePortConfiguration`.
#[cfg(feature = "VZConsolePortConfiguration")]
impl VZVirtioConsolePortConfiguration {
extern_methods!(
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}