soup/auto/
functions.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from
3// from gir-files (https://github.com/gtk-rs/gir-files)
4// DO NOT EDIT
5
6use crate::{ffi, Cookie, DateFormat, HTTPVersion, Message, MessageHeaders};
7use glib::translate::*;
8
9#[doc(alias = "soup_check_version")]
10pub fn check_version(major: u32, minor: u32, micro: u32) -> bool {
11    assert_initialized_main_thread!();
12    unsafe { from_glib(ffi::soup_check_version(major, minor, micro)) }
13}
14
15#[doc(alias = "soup_cookies_from_request")]
16pub fn cookies_from_request(msg: &Message) -> Vec<Cookie> {
17    skip_assert_initialized!();
18    unsafe {
19        FromGlibPtrContainer::from_glib_full(ffi::soup_cookies_from_request(msg.to_glib_none().0))
20    }
21}
22
23#[doc(alias = "soup_cookies_from_response")]
24pub fn cookies_from_response(msg: &Message) -> Vec<Cookie> {
25    skip_assert_initialized!();
26    unsafe {
27        FromGlibPtrContainer::from_glib_full(ffi::soup_cookies_from_response(msg.to_glib_none().0))
28    }
29}
30
31#[doc(alias = "soup_date_time_new_from_http_string")]
32pub fn date_time_new_from_http_string(date_string: &str) -> Option<glib::DateTime> {
33    assert_initialized_main_thread!();
34    unsafe {
35        from_glib_full(ffi::soup_date_time_new_from_http_string(
36            date_string.to_glib_none().0,
37        ))
38    }
39}
40
41#[doc(alias = "soup_date_time_to_string")]
42pub fn date_time_to_string(date: &glib::DateTime, format: DateFormat) -> Option<glib::GString> {
43    assert_initialized_main_thread!();
44    unsafe {
45        from_glib_full(ffi::soup_date_time_to_string(
46            date.to_glib_none().0,
47            format.into_glib(),
48        ))
49    }
50}
51
52//#[doc(alias = "soup_form_decode")]
53//pub fn form_decode(encoded_form: &str) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 0, id: 28 } {
54//    unsafe { TODO: call ffi:soup_form_decode() }
55//}
56
57//#[doc(alias = "soup_form_decode_multipart")]
58//pub fn form_decode_multipart(multipart: &mut Multipart, file_control_name: Option<&str>) -> (/*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 0, id: 28 }, glib::GString, glib::GString, glib::Bytes) {
59//    unsafe { TODO: call ffi:soup_form_decode_multipart() }
60//}
61
62//#[doc(alias = "soup_form_encode")]
63//pub fn form_encode(first_field: &str, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs) -> Option<glib::GString> {
64//    unsafe { TODO: call ffi:soup_form_encode() }
65//}
66
67//#[doc(alias = "soup_form_encode_datalist")]
68//pub fn form_encode_datalist(form_data_set: /*Ignored*/&mut glib::Data) -> Option<glib::GString> {
69//    unsafe { TODO: call ffi:soup_form_encode_datalist() }
70//}
71
72//#[doc(alias = "soup_form_encode_hash")]
73//pub fn form_encode_hash(form_data_set: /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 0, id: 28 }) -> Option<glib::GString> {
74//    unsafe { TODO: call ffi:soup_form_encode_hash() }
75//}
76
77//#[doc(alias = "soup_form_encode_valist")]
78//pub fn form_encode_valist(first_field: &str, args: /*Unknown conversion*//*Unimplemented*/Unsupported) -> Option<glib::GString> {
79//    unsafe { TODO: call ffi:soup_form_encode_valist() }
80//}
81
82#[doc(alias = "soup_get_major_version")]
83#[doc(alias = "get_major_version")]
84pub fn major_version() -> u32 {
85    assert_initialized_main_thread!();
86    unsafe { ffi::soup_get_major_version() }
87}
88
89#[doc(alias = "soup_get_micro_version")]
90#[doc(alias = "get_micro_version")]
91pub fn micro_version() -> u32 {
92    assert_initialized_main_thread!();
93    unsafe { ffi::soup_get_micro_version() }
94}
95
96#[doc(alias = "soup_get_minor_version")]
97#[doc(alias = "get_minor_version")]
98pub fn minor_version() -> u32 {
99    assert_initialized_main_thread!();
100    unsafe { ffi::soup_get_minor_version() }
101}
102
103#[doc(alias = "soup_header_contains")]
104pub fn header_contains(header: &str, token: &str) -> bool {
105    assert_initialized_main_thread!();
106    unsafe {
107        from_glib(ffi::soup_header_contains(
108            header.to_glib_none().0,
109            token.to_glib_none().0,
110        ))
111    }
112}
113
114//#[doc(alias = "soup_header_free_list")]
115//pub fn header_free_list(list: /*Unimplemented*/&[&Basic: Pointer]) {
116//    unsafe { TODO: call ffi:soup_header_free_list() }
117//}
118
119//#[doc(alias = "soup_header_free_param_list")]
120//pub fn header_free_param_list(param_list: /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 0, id: 28 }) {
121//    unsafe { TODO: call ffi:soup_header_free_param_list() }
122//}
123
124//#[doc(alias = "soup_header_g_string_append_param")]
125//pub fn header_g_string_append_param(string: /*Ignored*/&mut glib::String, name: &str, value: Option<&str>) {
126//    unsafe { TODO: call ffi:soup_header_g_string_append_param() }
127//}
128
129//#[doc(alias = "soup_header_g_string_append_param_quoted")]
130//pub fn header_g_string_append_param_quoted(string: /*Ignored*/&mut glib::String, name: &str, value: &str) {
131//    unsafe { TODO: call ffi:soup_header_g_string_append_param_quoted() }
132//}
133
134#[doc(alias = "soup_header_parse_list")]
135pub fn header_parse_list(header: &str) -> Vec<glib::GString> {
136    assert_initialized_main_thread!();
137    unsafe {
138        FromGlibPtrContainer::from_glib_full(ffi::soup_header_parse_list(header.to_glib_none().0))
139    }
140}
141
142//#[doc(alias = "soup_header_parse_param_list")]
143//pub fn header_parse_param_list(header: &str) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 0, id: 28 } {
144//    unsafe { TODO: call ffi:soup_header_parse_param_list() }
145//}
146
147//#[doc(alias = "soup_header_parse_param_list_strict")]
148//pub fn header_parse_param_list_strict(header: &str) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 0, id: 28 } {
149//    unsafe { TODO: call ffi:soup_header_parse_param_list_strict() }
150//}
151
152//#[doc(alias = "soup_header_parse_quality_list")]
153//pub fn header_parse_quality_list(header: &str, unacceptable: /*Unimplemented*/Vec<glib::GString>) -> Vec<glib::GString> {
154//    unsafe { TODO: call ffi:soup_header_parse_quality_list() }
155//}
156
157//#[doc(alias = "soup_header_parse_semi_param_list")]
158//pub fn header_parse_semi_param_list(header: &str) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 0, id: 28 } {
159//    unsafe { TODO: call ffi:soup_header_parse_semi_param_list() }
160//}
161
162//#[doc(alias = "soup_header_parse_semi_param_list_strict")]
163//pub fn header_parse_semi_param_list_strict(header: &str) -> /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 28 }/TypeId { ns_id: 0, id: 28 } {
164//    unsafe { TODO: call ffi:soup_header_parse_semi_param_list_strict() }
165//}
166
167#[doc(alias = "soup_headers_parse")]
168pub fn headers_parse(str: &str, dest: &MessageHeaders) -> bool {
169    assert_initialized_main_thread!();
170    let len = str.len() as _;
171    unsafe {
172        from_glib(ffi::soup_headers_parse(
173            str.to_glib_none().0,
174            len,
175            dest.to_glib_none().0,
176        ))
177    }
178}
179
180#[doc(alias = "soup_headers_parse_request")]
181pub fn headers_parse_request(
182    str: &str,
183    req_headers: &MessageHeaders,
184) -> (u32, glib::GString, glib::GString, HTTPVersion) {
185    assert_initialized_main_thread!();
186    let len = str.len() as _;
187    unsafe {
188        let mut req_method = std::ptr::null_mut();
189        let mut req_path = std::ptr::null_mut();
190        let mut ver = std::mem::MaybeUninit::uninit();
191        let ret = ffi::soup_headers_parse_request(
192            str.to_glib_none().0,
193            len,
194            req_headers.to_glib_none().0,
195            &mut req_method,
196            &mut req_path,
197            ver.as_mut_ptr(),
198        );
199        (
200            ret,
201            from_glib_full(req_method),
202            from_glib_full(req_path),
203            from_glib(ver.assume_init()),
204        )
205    }
206}
207
208#[doc(alias = "soup_headers_parse_response")]
209pub fn headers_parse_response(
210    str: &str,
211    headers: &MessageHeaders,
212) -> Option<(HTTPVersion, u32, glib::GString)> {
213    assert_initialized_main_thread!();
214    let len = str.len() as _;
215    unsafe {
216        let mut ver = std::mem::MaybeUninit::uninit();
217        let mut status_code = std::mem::MaybeUninit::uninit();
218        let mut reason_phrase = std::ptr::null_mut();
219        let ret = from_glib(ffi::soup_headers_parse_response(
220            str.to_glib_none().0,
221            len,
222            headers.to_glib_none().0,
223            ver.as_mut_ptr(),
224            status_code.as_mut_ptr(),
225            &mut reason_phrase,
226        ));
227        if ret {
228            Some((
229                from_glib(ver.assume_init()),
230                status_code.assume_init(),
231                from_glib_full(reason_phrase),
232            ))
233        } else {
234            None
235        }
236    }
237}
238
239#[doc(alias = "soup_headers_parse_status_line")]
240pub fn headers_parse_status_line(status_line: &str) -> Option<(HTTPVersion, u32, glib::GString)> {
241    assert_initialized_main_thread!();
242    unsafe {
243        let mut ver = std::mem::MaybeUninit::uninit();
244        let mut status_code = std::mem::MaybeUninit::uninit();
245        let mut reason_phrase = std::ptr::null_mut();
246        let ret = from_glib(ffi::soup_headers_parse_status_line(
247            status_line.to_glib_none().0,
248            ver.as_mut_ptr(),
249            status_code.as_mut_ptr(),
250            &mut reason_phrase,
251        ));
252        if ret {
253            Some((
254                from_glib(ver.assume_init()),
255                status_code.assume_init(),
256                from_glib_full(reason_phrase),
257            ))
258        } else {
259            None
260        }
261    }
262}
263
264#[doc(alias = "soup_tld_domain_is_public_suffix")]
265pub fn tld_domain_is_public_suffix(domain: &str) -> bool {
266    assert_initialized_main_thread!();
267    unsafe {
268        from_glib(ffi::soup_tld_domain_is_public_suffix(
269            domain.to_glib_none().0,
270        ))
271    }
272}
273
274#[doc(alias = "soup_tld_get_base_domain")]
275pub fn tld_get_base_domain(hostname: &str) -> Result<glib::GString, glib::Error> {
276    assert_initialized_main_thread!();
277    unsafe {
278        let mut error = std::ptr::null_mut();
279        let ret = ffi::soup_tld_get_base_domain(hostname.to_glib_none().0, &mut error);
280        if error.is_null() {
281            Ok(from_glib_none(ret))
282        } else {
283            Err(from_glib_full(error))
284        }
285    }
286}
287
288//#[doc(alias = "soup_uri_copy")]
289//pub fn uri_copy(uri: &glib::Uri, first_component: URIComponent, : /*Unknown conversion*//*Unimplemented*/Basic: VarArgs) -> Option<glib::Uri> {
290//    unsafe { TODO: call ffi:soup_uri_copy() }
291//}
292
293#[doc(alias = "soup_uri_decode_data_uri")]
294pub fn uri_decode_data_uri(uri: &str) -> (glib::Bytes, Option<glib::GString>) {
295    assert_initialized_main_thread!();
296    unsafe {
297        let mut content_type = std::ptr::null_mut();
298        let ret = from_glib_full(ffi::soup_uri_decode_data_uri(
299            uri.to_glib_none().0,
300            &mut content_type,
301        ));
302        (ret, from_glib_full(content_type))
303    }
304}
305
306#[doc(alias = "soup_uri_equal")]
307pub fn uri_equal(uri1: &glib::Uri, uri2: &glib::Uri) -> bool {
308    assert_initialized_main_thread!();
309    unsafe {
310        from_glib(ffi::soup_uri_equal(
311            uri1.to_glib_none().0,
312            uri2.to_glib_none().0,
313        ))
314    }
315}
316
317//#[doc(alias = "soup_websocket_client_prepare_handshake")]
318//pub fn websocket_client_prepare_handshake(msg: &Message, origin: Option<&str>, protocols: &[&str], supported_extensions: /*Ignored*/&[&glib::TypeClass]) {
319//    unsafe { TODO: call ffi:soup_websocket_client_prepare_handshake() }
320//}
321
322//#[doc(alias = "soup_websocket_client_verify_handshake")]
323//pub fn websocket_client_verify_handshake(msg: &Message, supported_extensions: /*Ignored*/&[&glib::TypeClass], accepted_extensions: /*Unimplemented*/Vec<WebsocketExtension>) -> Result<(), glib::Error> {
324//    unsafe { TODO: call ffi:soup_websocket_client_verify_handshake() }
325//}
326
327//#[doc(alias = "soup_websocket_server_check_handshake")]
328//pub fn websocket_server_check_handshake(msg: &ServerMessage, origin: Option<&str>, protocols: &[&str], supported_extensions: /*Ignored*/&[&glib::TypeClass]) -> Result<(), glib::Error> {
329//    unsafe { TODO: call ffi:soup_websocket_server_check_handshake() }
330//}
331
332//#[doc(alias = "soup_websocket_server_process_handshake")]
333//pub fn websocket_server_process_handshake(msg: &ServerMessage, expected_origin: Option<&str>, protocols: &[&str], supported_extensions: /*Ignored*/&[&glib::TypeClass], accepted_extensions: /*Unimplemented*/Vec<WebsocketExtension>) -> bool {
334//    unsafe { TODO: call ffi:soup_websocket_server_process_handshake() }
335//}