1use crate::{prelude::*, Cookie, CookieJar};
2use glib::translate::*;
3
4mod sealed {
5 pub trait Sealed {}
6 impl<T: super::IsA<crate::CookieJar>> Sealed for T {}
7}
8
9pub trait CookieJarExtManual: IsA<CookieJar> + sealed::Sealed + 'static {
10 #[doc(alias = "soup_cookie_jar_add_cookie")]
11 fn add_cookie(&self, cookie: &mut Cookie) {
12 unsafe {
13 ffi::soup_cookie_jar_add_cookie(
14 self.as_ref().to_glib_none().0,
15 mut_override(cookie.to_glib_full()),
16 );
17 }
18 }
19
20 #[doc(alias = "soup_cookie_jar_add_cookie_full")]
21 fn add_cookie_full(
22 &self,
23 cookie: &mut Cookie,
24 uri: Option<&glib::Uri>,
25 first_party: Option<&glib::Uri>,
26 ) {
27 unsafe {
28 ffi::soup_cookie_jar_add_cookie_full(
29 self.as_ref().to_glib_none().0,
30 mut_override(cookie.to_glib_full()),
31 uri.to_glib_none().0,
32 first_party.to_glib_none().0,
33 );
34 }
35 }
36
37 #[doc(alias = "soup_cookie_jar_add_cookie_with_first_party")]
38 fn add_cookie_with_first_party(&self, first_party: &glib::Uri, cookie: &mut Cookie) {
39 unsafe {
40 ffi::soup_cookie_jar_add_cookie_with_first_party(
41 self.as_ref().to_glib_none().0,
42 first_party.to_glib_none().0,
43 mut_override(cookie.to_glib_full()),
44 );
45 }
46 }
47
48 #[doc(alias = "soup_cookie_jar_delete_cookie")]
49 fn delete_cookie(&self, cookie: &mut Cookie) {
50 unsafe {
51 ffi::soup_cookie_jar_delete_cookie(
52 self.as_ref().to_glib_none().0,
53 cookie.to_glib_none_mut().0,
54 );
55 }
56 }
57}
58
59impl<O: IsA<CookieJar>> CookieJarExtManual for O {}