objc2_ui_kit/generated/
UISceneConfiguration.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    /// [Apple's documentation](https://developer.apple.com/documentation/uikit/uisceneconfiguration?language=objc)
12    #[unsafe(super(NSObject))]
13    #[thread_kind = MainThreadOnly]
14    #[derive(Debug, PartialEq, Eq, Hash)]
15    pub struct UISceneConfiguration;
16);
17
18extern_conformance!(
19    unsafe impl NSCoding for UISceneConfiguration {}
20);
21
22extern_conformance!(
23    unsafe impl NSCopying for UISceneConfiguration {}
24);
25
26unsafe impl CopyingHelper for UISceneConfiguration {
27    type Result = Self;
28}
29
30extern_conformance!(
31    unsafe impl NSObjectProtocol for UISceneConfiguration {}
32);
33
34extern_conformance!(
35    unsafe impl NSSecureCoding for UISceneConfiguration {}
36);
37
38impl UISceneConfiguration {
39    extern_methods!(
40        #[cfg(feature = "UISceneDefinitions")]
41        #[unsafe(method(configurationWithName:sessionRole:))]
42        #[unsafe(method_family = none)]
43        pub fn configurationWithName_sessionRole(
44            name: Option<&NSString>,
45            session_role: &UISceneSessionRole,
46            mtm: MainThreadMarker,
47        ) -> Retained<Self>;
48
49        #[cfg(feature = "UISceneDefinitions")]
50        #[unsafe(method(initWithName:sessionRole:))]
51        #[unsafe(method_family = init)]
52        pub fn initWithName_sessionRole(
53            this: Allocated<Self>,
54            name: Option<&NSString>,
55            session_role: &UISceneSessionRole,
56        ) -> Retained<Self>;
57
58        #[unsafe(method(name))]
59        #[unsafe(method_family = none)]
60        pub fn name(&self) -> Option<Retained<NSString>>;
61
62        #[cfg(feature = "UISceneDefinitions")]
63        #[unsafe(method(role))]
64        #[unsafe(method_family = none)]
65        pub fn role(&self) -> Retained<UISceneSessionRole>;
66
67        #[unsafe(method(sceneClass))]
68        #[unsafe(method_family = none)]
69        pub fn sceneClass(&self) -> Option<&'static AnyClass>;
70
71        /// Setter for [`sceneClass`][Self::sceneClass].
72        ///
73        /// # Safety
74        ///
75        /// `scene_class` probably has further requirements.
76        #[unsafe(method(setSceneClass:))]
77        #[unsafe(method_family = none)]
78        pub unsafe fn setSceneClass(&self, scene_class: Option<&AnyClass>);
79
80        #[unsafe(method(delegateClass))]
81        #[unsafe(method_family = none)]
82        pub fn delegateClass(&self) -> Option<&'static AnyClass>;
83
84        /// Setter for [`delegateClass`][Self::delegateClass].
85        ///
86        /// # Safety
87        ///
88        /// `delegate_class` probably has further requirements.
89        #[unsafe(method(setDelegateClass:))]
90        #[unsafe(method_family = none)]
91        pub unsafe fn setDelegateClass(&self, delegate_class: Option<&AnyClass>);
92
93        #[cfg(feature = "UIStoryboard")]
94        #[unsafe(method(storyboard))]
95        #[unsafe(method_family = none)]
96        pub fn storyboard(&self) -> Option<Retained<UIStoryboard>>;
97
98        #[cfg(feature = "UIStoryboard")]
99        /// Setter for [`storyboard`][Self::storyboard].
100        #[unsafe(method(setStoryboard:))]
101        #[unsafe(method_family = none)]
102        pub fn setStoryboard(&self, storyboard: Option<&UIStoryboard>);
103    );
104}
105
106/// Methods declared on superclass `NSObject`.
107impl UISceneConfiguration {
108    extern_methods!(
109        #[unsafe(method(init))]
110        #[unsafe(method_family = init)]
111        pub fn init(this: Allocated<Self>) -> Retained<Self>;
112
113        #[unsafe(method(new))]
114        #[unsafe(method_family = new)]
115        pub fn new(mtm: MainThreadMarker) -> Retained<Self>;
116    );
117}