objc2_web_kit/generated/
WKHTTPCookieStore.rs1use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10#[repr(transparent)]
13#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
14pub struct WKCookiePolicy(pub NSInteger);
15impl WKCookiePolicy {
16 #[doc(alias = "WKCookiePolicyAllow")]
17 pub const Allow: Self = Self(0);
18 #[doc(alias = "WKCookiePolicyDisallow")]
19 pub const Disallow: Self = Self(1);
20}
21
22unsafe impl Encode for WKCookiePolicy {
23 const ENCODING: Encoding = NSInteger::ENCODING;
24}
25
26unsafe impl RefEncode for WKCookiePolicy {
27 const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
28}
29
30extern_protocol!(
31 pub unsafe trait WKHTTPCookieStoreObserver: NSObjectProtocol + MainThreadOnly {
33 #[optional]
34 #[unsafe(method(cookiesDidChangeInCookieStore:))]
35 #[unsafe(method_family = none)]
36 unsafe fn cookiesDidChangeInCookieStore(&self, cookie_store: &WKHTTPCookieStore);
37 }
38);
39
40extern_class!(
41 #[unsafe(super(NSObject))]
45 #[thread_kind = MainThreadOnly]
46 #[derive(Debug, PartialEq, Eq, Hash)]
47 pub struct WKHTTPCookieStore;
48);
49
50unsafe impl NSObjectProtocol for WKHTTPCookieStore {}
51
52impl WKHTTPCookieStore {
53 extern_methods!(
54 #[unsafe(method(init))]
55 #[unsafe(method_family = init)]
56 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
57
58 #[cfg(feature = "block2")]
59 #[unsafe(method(getAllCookies:))]
63 #[unsafe(method_family = none)]
64 pub unsafe fn getAllCookies(
65 &self,
66 completion_handler: &block2::Block<dyn Fn(NonNull<NSArray<NSHTTPCookie>>)>,
67 );
68
69 #[cfg(feature = "block2")]
70 #[unsafe(method(setCookie:completionHandler:))]
76 #[unsafe(method_family = none)]
77 pub unsafe fn setCookie_completionHandler(
78 &self,
79 cookie: &NSHTTPCookie,
80 completion_handler: Option<&block2::Block<dyn Fn()>>,
81 );
82
83 #[cfg(feature = "block2")]
84 #[unsafe(method(deleteCookie:completionHandler:))]
88 #[unsafe(method_family = none)]
89 pub unsafe fn deleteCookie_completionHandler(
90 &self,
91 cookie: &NSHTTPCookie,
92 completion_handler: Option<&block2::Block<dyn Fn()>>,
93 );
94
95 #[unsafe(method(addObserver:))]
102 #[unsafe(method_family = none)]
103 pub unsafe fn addObserver(&self, observer: &ProtocolObject<dyn WKHTTPCookieStoreObserver>);
104
105 #[unsafe(method(removeObserver:))]
109 #[unsafe(method_family = none)]
110 pub unsafe fn removeObserver(
111 &self,
112 observer: &ProtocolObject<dyn WKHTTPCookieStoreObserver>,
113 );
114
115 #[cfg(feature = "block2")]
116 #[unsafe(method(setCookiePolicy:completionHandler:))]
122 #[unsafe(method_family = none)]
123 pub unsafe fn setCookiePolicy_completionHandler(
124 &self,
125 policy: WKCookiePolicy,
126 completion_handler: Option<&block2::Block<dyn Fn()>>,
127 );
128
129 #[cfg(feature = "block2")]
130 #[unsafe(method(getCookiePolicy:))]
134 #[unsafe(method_family = none)]
135 pub unsafe fn getCookiePolicy(
136 &self,
137 completion_handler: &block2::Block<dyn Fn(WKCookiePolicy)>,
138 );
139 );
140}
141
142impl WKHTTPCookieStore {
144 extern_methods!(
145 #[unsafe(method(new))]
146 #[unsafe(method_family = new)]
147 pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
148 );
149}