objc2_virtualization/generated/
VZVirtioConsolePortArray.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::*;
5
6use crate::*;
7
8extern_class!(
9    /// Virtio Console Port Array
10    ///
11    /// This array stores a collection of ports configured for use by a VZVirtioConsoleDevice. VZVirtioConsolePort objects may be retrieved by index.
12    ///
13    /// See: VZVirtioConsoleDevice
14    ///
15    /// See: VZVirtioConsolePort
16    ///
17    /// See also [Apple's documentation](https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportarray?language=objc)
18    #[unsafe(super(NSObject))]
19    #[derive(Debug, PartialEq, Eq, Hash)]
20    pub struct VZVirtioConsolePortArray;
21);
22
23extern_conformance!(
24    unsafe impl NSObjectProtocol for VZVirtioConsolePortArray {}
25);
26
27impl VZVirtioConsolePortArray {
28    extern_methods!(
29        #[unsafe(method(new))]
30        #[unsafe(method_family = new)]
31        pub unsafe fn new() -> Retained<Self>;
32
33        #[unsafe(method(init))]
34        #[unsafe(method_family = init)]
35        pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
36
37        #[cfg(feature = "VZVirtioConsolePort")]
38        /// Get a port at the specified index.
39        #[unsafe(method(objectAtIndexedSubscript:))]
40        #[unsafe(method_family = none)]
41        pub unsafe fn objectAtIndexedSubscript(
42            &self,
43            port_index: NSUInteger,
44        ) -> Option<Retained<VZVirtioConsolePort>>;
45
46        /// The maximum number of ports allocated by this device.
47        #[unsafe(method(maximumPortCount))]
48        #[unsafe(method_family = none)]
49        pub unsafe fn maximumPortCount(&self) -> u32;
50    );
51}