objc2_foundation/generated/NSObjCRuntime.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::*;
6
7use crate::*;
8
9/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_0?language=objc)
10pub const NSFoundationVersionNumber10_0: c_float = 397.40;
11/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_1?language=objc)
12pub const NSFoundationVersionNumber10_1: c_float = 425.00;
13/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_1_1?language=objc)
14pub const NSFoundationVersionNumber10_1_1: c_float = 425.00;
15/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_1_2?language=objc)
16pub const NSFoundationVersionNumber10_1_2: c_float = 425.00;
17/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_1_3?language=objc)
18pub const NSFoundationVersionNumber10_1_3: c_float = 425.00;
19/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_1_4?language=objc)
20pub const NSFoundationVersionNumber10_1_4: c_float = 425.00;
21/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2?language=objc)
22pub const NSFoundationVersionNumber10_2: c_float = 462.00;
23/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2_1?language=objc)
24pub const NSFoundationVersionNumber10_2_1: c_float = 462.00;
25/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2_2?language=objc)
26pub const NSFoundationVersionNumber10_2_2: c_float = 462.00;
27/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2_3?language=objc)
28pub const NSFoundationVersionNumber10_2_3: c_float = 462.00;
29/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2_4?language=objc)
30pub const NSFoundationVersionNumber10_2_4: c_float = 462.00;
31/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2_5?language=objc)
32pub const NSFoundationVersionNumber10_2_5: c_float = 462.00;
33/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2_6?language=objc)
34pub const NSFoundationVersionNumber10_2_6: c_float = 462.00;
35/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2_7?language=objc)
36pub const NSFoundationVersionNumber10_2_7: c_float = 462.70;
37/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_2_8?language=objc)
38pub const NSFoundationVersionNumber10_2_8: c_float = 462.70;
39/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3?language=objc)
40pub const NSFoundationVersionNumber10_3: c_float = 500.00;
41/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_1?language=objc)
42pub const NSFoundationVersionNumber10_3_1: c_float = 500.00;
43/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_2?language=objc)
44pub const NSFoundationVersionNumber10_3_2: c_float = 500.30;
45/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_3?language=objc)
46pub const NSFoundationVersionNumber10_3_3: c_float = 500.54;
47/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_4?language=objc)
48pub const NSFoundationVersionNumber10_3_4: c_float = 500.56;
49/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_5?language=objc)
50pub const NSFoundationVersionNumber10_3_5: c_float = 500.56;
51/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_6?language=objc)
52pub const NSFoundationVersionNumber10_3_6: c_float = 500.56;
53/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_7?language=objc)
54pub const NSFoundationVersionNumber10_3_7: c_float = 500.56;
55/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_8?language=objc)
56pub const NSFoundationVersionNumber10_3_8: c_float = 500.56;
57/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_3_9?language=objc)
58pub const NSFoundationVersionNumber10_3_9: c_float = 500.58;
59/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4?language=objc)
60pub const NSFoundationVersionNumber10_4: c_float = 567.00;
61/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_1?language=objc)
62pub const NSFoundationVersionNumber10_4_1: c_float = 567.00;
63/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_2?language=objc)
64pub const NSFoundationVersionNumber10_4_2: c_float = 567.12;
65/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_3?language=objc)
66pub const NSFoundationVersionNumber10_4_3: c_float = 567.21;
67/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_4_intel?language=objc)
68pub const NSFoundationVersionNumber10_4_4_Intel: c_float = 567.23;
69/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_4_powerpc?language=objc)
70pub const NSFoundationVersionNumber10_4_4_PowerPC: c_float = 567.21;
71/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_5?language=objc)
72pub const NSFoundationVersionNumber10_4_5: c_float = 567.25;
73/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_6?language=objc)
74pub const NSFoundationVersionNumber10_4_6: c_float = 567.26;
75/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_7?language=objc)
76pub const NSFoundationVersionNumber10_4_7: c_float = 567.27;
77/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_8?language=objc)
78pub const NSFoundationVersionNumber10_4_8: c_float = 567.28;
79/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_9?language=objc)
80pub const NSFoundationVersionNumber10_4_9: c_float = 567.29;
81/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_10?language=objc)
82pub const NSFoundationVersionNumber10_4_10: c_float = 567.29;
83/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_4_11?language=objc)
84pub const NSFoundationVersionNumber10_4_11: c_float = 567.36;
85/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5?language=objc)
86pub const NSFoundationVersionNumber10_5: c_float = 677.00;
87/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5_1?language=objc)
88pub const NSFoundationVersionNumber10_5_1: c_float = 677.10;
89/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5_2?language=objc)
90pub const NSFoundationVersionNumber10_5_2: c_float = 677.15;
91/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5_3?language=objc)
92pub const NSFoundationVersionNumber10_5_3: c_float = 677.19;
93/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5_4?language=objc)
94pub const NSFoundationVersionNumber10_5_4: c_float = 677.19;
95/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5_5?language=objc)
96pub const NSFoundationVersionNumber10_5_5: c_float = 677.21;
97/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5_6?language=objc)
98pub const NSFoundationVersionNumber10_5_6: c_float = 677.22;
99/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5_7?language=objc)
100pub const NSFoundationVersionNumber10_5_7: c_float = 677.24;
101/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_5_8?language=objc)
102pub const NSFoundationVersionNumber10_5_8: c_float = 677.26;
103/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6?language=objc)
104pub const NSFoundationVersionNumber10_6: c_float = 751.00;
105/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6_1?language=objc)
106pub const NSFoundationVersionNumber10_6_1: c_float = 751.00;
107/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6_2?language=objc)
108pub const NSFoundationVersionNumber10_6_2: c_float = 751.14;
109/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6_3?language=objc)
110pub const NSFoundationVersionNumber10_6_3: c_float = 751.21;
111/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6_4?language=objc)
112pub const NSFoundationVersionNumber10_6_4: c_float = 751.29;
113/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6_5?language=objc)
114pub const NSFoundationVersionNumber10_6_5: c_float = 751.42;
115/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6_6?language=objc)
116pub const NSFoundationVersionNumber10_6_6: c_float = 751.53;
117/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6_7?language=objc)
118pub const NSFoundationVersionNumber10_6_7: c_float = 751.53;
119/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_6_8?language=objc)
120pub const NSFoundationVersionNumber10_6_8: c_float = 751.62;
121/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_7?language=objc)
122pub const NSFoundationVersionNumber10_7: c_float = 833.10;
123/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_7_1?language=objc)
124pub const NSFoundationVersionNumber10_7_1: c_float = 833.10;
125/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_7_2?language=objc)
126pub const NSFoundationVersionNumber10_7_2: c_float = 833.20;
127/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_7_3?language=objc)
128pub const NSFoundationVersionNumber10_7_3: c_float = 833.24;
129/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_7_4?language=objc)
130pub const NSFoundationVersionNumber10_7_4: c_float = 833.25;
131/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_8?language=objc)
132pub const NSFoundationVersionNumber10_8: c_float = 945.00;
133/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_8_1?language=objc)
134pub const NSFoundationVersionNumber10_8_1: c_float = 945.00;
135/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_8_2?language=objc)
136pub const NSFoundationVersionNumber10_8_2: c_float = 945.11;
137/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_8_3?language=objc)
138pub const NSFoundationVersionNumber10_8_3: c_float = 945.16;
139/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_8_4?language=objc)
140pub const NSFoundationVersionNumber10_8_4: c_float = 945.18;
141/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_9?language=objc)
142pub const NSFoundationVersionNumber10_9: c_uint = 1056;
143/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_9_1?language=objc)
144pub const NSFoundationVersionNumber10_9_1: c_uint = 1056;
145/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_9_2?language=objc)
146pub const NSFoundationVersionNumber10_9_2: c_float = 1056.13;
147/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_10?language=objc)
148pub const NSFoundationVersionNumber10_10: c_float = 1151.16;
149/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_10_1?language=objc)
150pub const NSFoundationVersionNumber10_10_1: c_float = 1151.16;
151/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_10_2?language=objc)
152pub const NSFoundationVersionNumber10_10_2: c_float = 1152.14;
153/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_10_3?language=objc)
154pub const NSFoundationVersionNumber10_10_3: c_float = 1153.20;
155/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_10_4?language=objc)
156pub const NSFoundationVersionNumber10_10_4: c_float = 1153.20;
157/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_10_5?language=objc)
158pub const NSFoundationVersionNumber10_10_5: c_uint = 1154;
159/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_10_max?language=objc)
160pub const NSFoundationVersionNumber10_10_Max: c_uint = 1199;
161/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_11?language=objc)
162pub const NSFoundationVersionNumber10_11: c_uint = 1252;
163/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_11_1?language=objc)
164pub const NSFoundationVersionNumber10_11_1: c_float = 1255.1;
165/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_11_2?language=objc)
166pub const NSFoundationVersionNumber10_11_2: c_float = 1256.1;
167/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_11_3?language=objc)
168pub const NSFoundationVersionNumber10_11_3: c_float = 1256.1;
169/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_11_4?language=objc)
170pub const NSFoundationVersionNumber10_11_4: c_uint = 1258;
171/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber10_11_max?language=objc)
172pub const NSFoundationVersionNumber10_11_Max: c_uint = 1299;
173extern "C" {
174 /// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsfoundationversionnumber?language=objc)
175 pub static NSFoundationVersionNumber: c_double;
176}
177
178/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsexceptionname?language=objc)
179// NS_TYPED_EXTENSIBLE_ENUM
180#[cfg(feature = "NSString")]
181pub type NSExceptionName = NSString;
182
183/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsrunloopmode?language=objc)
184// NS_TYPED_EXTENSIBLE_ENUM
185#[cfg(feature = "NSString")]
186pub type NSRunLoopMode = NSString;
187
188#[cfg(feature = "NSString")]
189impl NSString {
190 /// # Safety
191 ///
192 /// `a_selector` must be a valid selector.
193 #[doc(alias = "NSStringFromSelector")]
194 #[cfg(feature = "NSString")]
195 #[inline]
196 pub unsafe fn from_selector(a_selector: Sel) -> Retained<NSString> {
197 extern "C-unwind" {
198 fn NSStringFromSelector(a_selector: Sel) -> *mut NSString;
199 }
200 let ret = unsafe { NSStringFromSelector(a_selector) };
201 unsafe { Retained::retain_autoreleased(ret) }
202 .expect("function was marked as returning non-null, but actually returned NULL")
203 }
204}
205
206#[cfg(feature = "NSString")]
207#[inline]
208pub extern "C-unwind" fn NSSelectorFromString(a_selector_name: &NSString) -> Sel {
209 extern "C-unwind" {
210 fn NSSelectorFromString(a_selector_name: &NSString) -> Sel;
211 }
212 unsafe { NSSelectorFromString(a_selector_name) }
213}
214
215#[cfg(feature = "NSString")]
216impl NSString {
217 #[doc(alias = "NSStringFromClass")]
218 #[cfg(feature = "NSString")]
219 #[inline]
220 pub fn from_class(a_class: &AnyClass) -> Retained<NSString> {
221 extern "C-unwind" {
222 fn NSStringFromClass(a_class: &AnyClass) -> *mut NSString;
223 }
224 let ret = unsafe { NSStringFromClass(a_class) };
225 unsafe { Retained::retain_autoreleased(ret) }
226 .expect("function was marked as returning non-null, but actually returned NULL")
227 }
228}
229
230#[cfg(feature = "NSString")]
231#[inline]
232pub extern "C-unwind" fn NSClassFromString(a_class_name: &NSString) -> Option<&'static AnyClass> {
233 extern "C-unwind" {
234 fn NSClassFromString(a_class_name: &NSString) -> Option<&'static AnyClass>;
235 }
236 unsafe { NSClassFromString(a_class_name) }
237}
238
239#[cfg(feature = "NSString")]
240impl NSString {
241 /// # Safety
242 ///
243 /// `proto` possibly has further requirements.
244 #[doc(alias = "NSStringFromProtocol")]
245 #[cfg(feature = "NSString")]
246 #[inline]
247 pub unsafe fn from_protocol(proto: &AnyProtocol) -> Retained<NSString> {
248 extern "C-unwind" {
249 fn NSStringFromProtocol(proto: &AnyProtocol) -> *mut NSString;
250 }
251 let ret = unsafe { NSStringFromProtocol(proto) };
252 unsafe { Retained::retain_autoreleased(ret) }
253 .expect("function was marked as returning non-null, but actually returned NULL")
254 }
255}
256
257#[cfg(feature = "NSString")]
258#[inline]
259pub extern "C-unwind" fn NSProtocolFromString(namestr: &NSString) -> Option<Retained<AnyProtocol>> {
260 extern "C-unwind" {
261 fn NSProtocolFromString(namestr: &NSString) -> *mut AnyProtocol;
262 }
263 let ret = unsafe { NSProtocolFromString(namestr) };
264 unsafe { Retained::retain_autoreleased(ret) }
265}
266
267/// # Safety
268///
269/// - `type_ptr` must be a valid pointer.
270/// - `sizep` must be a valid pointer or null.
271/// - `alignp` must be a valid pointer or null.
272#[inline]
273pub unsafe extern "C-unwind" fn NSGetSizeAndAlignment(
274 type_ptr: NonNull<c_char>,
275 sizep: *mut NSUInteger,
276 alignp: *mut NSUInteger,
277) -> NonNull<c_char> {
278 extern "C-unwind" {
279 fn NSGetSizeAndAlignment(
280 type_ptr: NonNull<c_char>,
281 sizep: *mut NSUInteger,
282 alignp: *mut NSUInteger,
283 ) -> Option<NonNull<c_char>>;
284 }
285 let ret = unsafe { NSGetSizeAndAlignment(type_ptr, sizep, alignp) };
286 ret.expect("function was marked as returning non-null, but actually returned NULL")
287}
288
289/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nscomparator?language=objc)
290#[cfg(feature = "block2")]
291pub type NSComparator =
292 *mut block2::DynBlock<dyn Fn(NonNull<AnyObject>, NonNull<AnyObject>) -> NSComparisonResult>;
293
294/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsenumerationoptions?language=objc)
295// NS_OPTIONS
296#[repr(transparent)]
297#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
298pub struct NSEnumerationOptions(pub NSUInteger);
299bitflags::bitflags! {
300 impl NSEnumerationOptions: NSUInteger {
301 #[doc(alias = "NSEnumerationConcurrent")]
302 const Concurrent = 1<<0;
303 #[doc(alias = "NSEnumerationReverse")]
304 const Reverse = 1<<1;
305 }
306}
307
308unsafe impl Encode for NSEnumerationOptions {
309 const ENCODING: Encoding = NSUInteger::ENCODING;
310}
311
312unsafe impl RefEncode for NSEnumerationOptions {
313 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
314}
315
316/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nssortoptions?language=objc)
317// NS_OPTIONS
318#[repr(transparent)]
319#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
320pub struct NSSortOptions(pub NSUInteger);
321bitflags::bitflags! {
322 impl NSSortOptions: NSUInteger {
323 #[doc(alias = "NSSortConcurrent")]
324 const Concurrent = 1<<0;
325 #[doc(alias = "NSSortStable")]
326 const Stable = 1<<4;
327 }
328}
329
330unsafe impl Encode for NSSortOptions {
331 const ENCODING: Encoding = NSUInteger::ENCODING;
332}
333
334unsafe impl RefEncode for NSSortOptions {
335 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
336}
337
338/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsqualityofservice?language=objc)
339// NS_ENUM
340#[repr(transparent)]
341#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
342pub struct NSQualityOfService(pub NSInteger);
343impl NSQualityOfService {
344 #[doc(alias = "NSQualityOfServiceUserInteractive")]
345 pub const UserInteractive: Self = Self(0x21);
346 #[doc(alias = "NSQualityOfServiceUserInitiated")]
347 pub const UserInitiated: Self = Self(0x19);
348 #[doc(alias = "NSQualityOfServiceUtility")]
349 pub const Utility: Self = Self(0x11);
350 #[doc(alias = "NSQualityOfServiceBackground")]
351 pub const Background: Self = Self(0x09);
352 #[doc(alias = "NSQualityOfServiceDefault")]
353 pub const Default: Self = Self(-1);
354}
355
356unsafe impl Encode for NSQualityOfService {
357 const ENCODING: Encoding = NSInteger::ENCODING;
358}
359
360unsafe impl RefEncode for NSQualityOfService {
361 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
362}
363
364/// [Apple's documentation](https://developer.apple.com/documentation/foundation/nsnotfound?language=objc)
365pub static NSNotFound: NSInteger = NSIntegerMax as _;
366
367#[cfg(feature = "NSString")]
368#[deprecated = "renamed to `NSString::from_selector`"]
369#[inline]
370pub unsafe extern "C-unwind" fn NSStringFromSelector(a_selector: Sel) -> Retained<NSString> {
371 extern "C-unwind" {
372 fn NSStringFromSelector(a_selector: Sel) -> *mut NSString;
373 }
374 let ret = unsafe { NSStringFromSelector(a_selector) };
375 unsafe { Retained::retain_autoreleased(ret) }
376 .expect("function was marked as returning non-null, but actually returned NULL")
377}
378
379#[cfg(feature = "NSString")]
380#[deprecated = "renamed to `NSString::from_class`"]
381#[inline]
382pub extern "C-unwind" fn NSStringFromClass(a_class: &AnyClass) -> Retained<NSString> {
383 extern "C-unwind" {
384 fn NSStringFromClass(a_class: &AnyClass) -> *mut NSString;
385 }
386 let ret = unsafe { NSStringFromClass(a_class) };
387 unsafe { Retained::retain_autoreleased(ret) }
388 .expect("function was marked as returning non-null, but actually returned NULL")
389}
390
391#[cfg(feature = "NSString")]
392#[deprecated = "renamed to `NSString::from_protocol`"]
393#[inline]
394pub unsafe extern "C-unwind" fn NSStringFromProtocol(proto: &AnyProtocol) -> Retained<NSString> {
395 extern "C-unwind" {
396 fn NSStringFromProtocol(proto: &AnyProtocol) -> *mut NSString;
397 }
398 let ret = unsafe { NSStringFromProtocol(proto) };
399 unsafe { Retained::retain_autoreleased(ret) }
400 .expect("function was marked as returning non-null, but actually returned NULL")
401}