objc2_virtualization/generated/
VZLinuxRosettaDirectoryShare.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10#[repr(transparent)]
15#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
16pub struct VZLinuxRosettaAvailability(pub NSInteger);
17impl VZLinuxRosettaAvailability {
18 #[doc(alias = "VZLinuxRosettaAvailabilityNotSupported")]
20 pub const NotSupported: Self = Self(0);
21 #[doc(alias = "VZLinuxRosettaAvailabilityNotInstalled")]
23 pub const NotInstalled: Self = Self(1);
24 #[doc(alias = "VZLinuxRosettaAvailabilityInstalled")]
26 pub const Installed: Self = Self(2);
27}
28
29unsafe impl Encode for VZLinuxRosettaAvailability {
30 const ENCODING: Encoding = NSInteger::ENCODING;
31}
32
33unsafe impl RefEncode for VZLinuxRosettaAvailability {
34 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
35}
36
37extern_class!(
38 #[unsafe(super(VZDirectoryShare, NSObject))]
48 #[derive(Debug, PartialEq, Eq, Hash)]
49 #[cfg(feature = "VZDirectoryShare")]
50 pub struct VZLinuxRosettaDirectoryShare;
51);
52
53#[cfg(feature = "VZDirectoryShare")]
54unsafe impl NSObjectProtocol for VZLinuxRosettaDirectoryShare {}
55
56#[cfg(feature = "VZDirectoryShare")]
57impl VZLinuxRosettaDirectoryShare {
58 extern_methods!(
59 #[unsafe(method(initWithError:_))]
67 #[unsafe(method_family = init)]
68 pub unsafe fn initWithError(
69 this: Allocated<Self>,
70 ) -> Result<Retained<Self>, Retained<NSError>>;
71
72 #[cfg(feature = "block2")]
73 #[unsafe(method(installRosettaWithCompletionHandler:))]
81 #[unsafe(method_family = none)]
82 pub unsafe fn installRosettaWithCompletionHandler(
83 completion_handler: &block2::Block<dyn Fn(*mut NSError)>,
84 );
85
86 #[cfg(feature = "VZLinuxRosettaCachingOptions")]
87 #[unsafe(method(options))]
89 #[unsafe(method_family = none)]
90 pub unsafe fn options(&self) -> Option<Retained<VZLinuxRosettaCachingOptions>>;
91
92 #[cfg(feature = "VZLinuxRosettaCachingOptions")]
93 #[unsafe(method(setOptions:))]
95 #[unsafe(method_family = none)]
96 pub unsafe fn setOptions(&self, options: Option<&VZLinuxRosettaCachingOptions>);
97
98 #[unsafe(method(availability))]
100 #[unsafe(method_family = none)]
101 pub unsafe fn availability() -> VZLinuxRosettaAvailability;
102 );
103}
104
105#[cfg(feature = "VZDirectoryShare")]
107impl VZLinuxRosettaDirectoryShare {
108 extern_methods!(
109 #[unsafe(method(new))]
110 #[unsafe(method_family = new)]
111 pub unsafe fn new() -> Retained<Self>;
112
113 #[unsafe(method(init))]
114 #[unsafe(method_family = init)]
115 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
116 );
117}