soup/
websocket_connection.rs1use crate::{prelude::*, WebsocketConnection, WebsocketConnectionType, WebsocketExtension};
2use glib::translate::*;
3
4mod sealed {
5 pub trait Sealed {}
6 impl<T: super::IsA<crate::WebsocketConnection>> Sealed for T {}
7}
8
9pub trait WebsocketConnectionExtManual:
10 IsA<WebsocketConnection> + sealed::Sealed + 'static
11{
12 #[doc(alias = "soup_websocket_connection_new")]
13 fn new(
14 stream: &impl IsA<gio::IOStream>,
15 uri: &glib::Uri,
16 type_: WebsocketConnectionType,
17 origin: Option<&str>,
18 protocol: Option<&str>,
19 extensions: &[WebsocketExtension],
20 ) -> WebsocketConnection {
21 assert_initialized_main_thread!();
22 unsafe {
23 from_glib_full(ffi::soup_websocket_connection_new(
24 stream.as_ref().to_glib_none().0,
25 uri.to_glib_none().0,
26 type_.into_glib(),
27 origin.to_glib_none().0,
28 protocol.to_glib_none().0,
29 extensions.to_glib_full(),
30 ))
31 }
32 }
33}
34
35impl<O: IsA<WebsocketConnection>> WebsocketConnectionExtManual for O {}