objc2_cloud_kit/generated/
CKReference.rs1use core::ptr::NonNull;
4use objc2::__framework_prelude::*;
5use objc2_foundation::*;
6
7use crate::*;
8
9#[repr(transparent)]
12#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
13pub struct CKReferenceAction(pub NSUInteger);
14impl CKReferenceAction {
15 #[doc(alias = "CKReferenceActionNone")]
16 pub const None: Self = Self(0);
17 #[doc(alias = "CKReferenceActionDeleteSelf")]
18 pub const DeleteSelf: Self = Self(1);
19}
20
21unsafe impl Encode for CKReferenceAction {
22 const ENCODING: Encoding = NSUInteger::ENCODING;
23}
24
25unsafe impl RefEncode for CKReferenceAction {
26 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
27}
28
29extern_class!(
30 #[unsafe(super(NSObject))]
32 #[derive(Debug, PartialEq, Eq, Hash)]
33 pub struct CKReference;
34);
35
36unsafe impl Send for CKReference {}
37
38unsafe impl Sync for CKReference {}
39
40extern_conformance!(
41 unsafe impl NSCoding for CKReference {}
42);
43
44extern_conformance!(
45 unsafe impl NSCopying for CKReference {}
46);
47
48unsafe impl CopyingHelper for CKReference {
49 type Result = Self;
50}
51
52extern_conformance!(
53 unsafe impl NSObjectProtocol for CKReference {}
54);
55
56extern_conformance!(
57 unsafe impl NSSecureCoding for CKReference {}
58);
59
60impl CKReference {
61 extern_methods!(
62 #[unsafe(method(init))]
63 #[unsafe(method_family = init)]
64 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
65
66 #[unsafe(method(new))]
67 #[unsafe(method_family = new)]
68 pub unsafe fn new() -> Retained<Self>;
69
70 #[cfg(feature = "CKRecordID")]
71 #[unsafe(method(initWithRecordID:action:))]
75 #[unsafe(method_family = init)]
76 pub unsafe fn initWithRecordID_action(
77 this: Allocated<Self>,
78 record_id: &CKRecordID,
79 action: CKReferenceAction,
80 ) -> Retained<Self>;
81
82 #[cfg(feature = "CKRecord")]
83 #[unsafe(method(initWithRecord:action:))]
84 #[unsafe(method_family = init)]
85 pub unsafe fn initWithRecord_action(
86 this: Allocated<Self>,
87 record: &CKRecord,
88 action: CKReferenceAction,
89 ) -> Retained<Self>;
90
91 #[unsafe(method(referenceAction))]
97 #[unsafe(method_family = none)]
98 pub unsafe fn referenceAction(&self) -> CKReferenceAction;
99
100 #[cfg(feature = "CKRecordID")]
101 #[unsafe(method(recordID))]
107 #[unsafe(method_family = none)]
108 pub unsafe fn recordID(&self) -> Retained<CKRecordID>;
109 );
110}