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
50extern_conformance!(
51 unsafe impl NSObjectProtocol for WKHTTPCookieStore {}
52);
53
54impl WKHTTPCookieStore {
55 extern_methods!(
56 #[unsafe(method(init))]
57 #[unsafe(method_family = init)]
58 pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
59
60 #[cfg(feature = "block2")]
61 #[unsafe(method(getAllCookies:))]
65 #[unsafe(method_family = none)]
66 pub unsafe fn getAllCookies(
67 &self,
68 completion_handler: &block2::DynBlock<dyn Fn(NonNull<NSArray<NSHTTPCookie>>)>,
69 );
70
71 #[cfg(feature = "block2")]
72 #[unsafe(method(setCookie:completionHandler:))]
78 #[unsafe(method_family = none)]
79 pub unsafe fn setCookie_completionHandler(
80 &self,
81 cookie: &NSHTTPCookie,
82 completion_handler: Option<&block2::DynBlock<dyn Fn()>>,
83 );
84
85 #[cfg(feature = "block2")]
86 #[unsafe(method(deleteCookie:completionHandler:))]
90 #[unsafe(method_family = none)]
91 pub unsafe fn deleteCookie_completionHandler(
92 &self,
93 cookie: &NSHTTPCookie,
94 completion_handler: Option<&block2::DynBlock<dyn Fn()>>,
95 );
96
97 #[unsafe(method(addObserver:))]
104 #[unsafe(method_family = none)]
105 pub unsafe fn addObserver(&self, observer: &ProtocolObject<dyn WKHTTPCookieStoreObserver>);
106
107 #[unsafe(method(removeObserver:))]
111 #[unsafe(method_family = none)]
112 pub unsafe fn removeObserver(
113 &self,
114 observer: &ProtocolObject<dyn WKHTTPCookieStoreObserver>,
115 );
116
117 #[cfg(feature = "block2")]
118 #[unsafe(method(setCookiePolicy:completionHandler:))]
124 #[unsafe(method_family = none)]
125 pub unsafe fn setCookiePolicy_completionHandler(
126 &self,
127 policy: WKCookiePolicy,
128 completion_handler: Option<&block2::DynBlock<dyn Fn()>>,
129 );
130
131 #[cfg(feature = "block2")]
132 #[unsafe(method(getCookiePolicy:))]
136 #[unsafe(method_family = none)]
137 pub unsafe fn getCookiePolicy(
138 &self,
139 completion_handler: &block2::DynBlock<dyn Fn(WKCookiePolicy)>,
140 );
141 );
142}
143
144impl WKHTTPCookieStore {
146 extern_methods!(
147 #[unsafe(method(new))]
148 #[unsafe(method_family = new)]
149 pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>;
150 );
151}