1 #![allow(unused_imports)]
2 use super::*;
3 use wasm_bindgen::prelude::*;
4 #[wasm_bindgen]
5 extern "C" {
6     # [wasm_bindgen (extends = :: js_sys :: Object , js_name = WebSocketElement)]
7     #[derive(Debug, Clone, PartialEq, Eq)]
8     #[doc = "The `WebSocketElement` dictionary."]
9     #[doc = ""]
10     #[doc = "*This API requires the following crate features to be activated: `WebSocketElement`*"]
11     pub type WebSocketElement;
12 }
13 impl WebSocketElement {
14     #[doc = "Construct a new `WebSocketElement`."]
15     #[doc = ""]
16     #[doc = "*This API requires the following crate features to be activated: `WebSocketElement`*"]
17     pub fn new() -> Self {
18         #[allow(unused_mut)]
19         let mut ret: Self = ::wasm_bindgen::JsCast::unchecked_into(::js_sys::Object::new());
url(this: &WebSocket) -> String20         ret
21     }
22     #[doc = "Change the `encrypted` field of this object."]
23     #[doc = ""]
24     #[doc = "*This API requires the following crate features to be activated: `WebSocketElement`*"]
25     pub fn encrypted(&mut self, val: bool) -> &mut Self {
26         use wasm_bindgen::JsValue;
27         let r = ::js_sys::Reflect::set(
28             self.as_ref(),
29             &JsValue::from("encrypted"),
30             &JsValue::from(val),
31         );
32         debug_assert!(
33             r.is_ok(),
34             "setting properties should never fail on our dictionary objects"
35         );
36         let _ = r;
37         self
38     }
39     #[doc = "Change the `hostport` field of this object."]
40     #[doc = ""]
onopen(this: &WebSocket) -> Option<::js_sys::Function>41     #[doc = "*This API requires the following crate features to be activated: `WebSocketElement`*"]
42     pub fn hostport(&mut self, val: &str) -> &mut Self {
43         use wasm_bindgen::JsValue;
44         let r = ::js_sys::Reflect::set(
45             self.as_ref(),
46             &JsValue::from("hostport"),
47             &JsValue::from(val),
48         );
49         debug_assert!(
50             r.is_ok(),
51             "setting properties should never fail on our dictionary objects"
52         );
53         let _ = r;
54         self
55     }
56     #[doc = "Change the `msgreceived` field of this object."]
57     #[doc = ""]
58     #[doc = "*This API requires the following crate features to be activated: `WebSocketElement`*"]
59     pub fn msgreceived(&mut self, val: u32) -> &mut Self {
60         use wasm_bindgen::JsValue;
61         let r = ::js_sys::Reflect::set(
set_onerror(this: &WebSocket, value: Option<&::js_sys::Function>)62             self.as_ref(),
63             &JsValue::from("msgreceived"),
64             &JsValue::from(val),
65         );
66         debug_assert!(
67             r.is_ok(),
68             "setting properties should never fail on our dictionary objects"
onclose(this: &WebSocket) -> Option<::js_sys::Function>69         );
70         let _ = r;
71         self
72     }
73     #[doc = "Change the `msgsent` field of this object."]
74     #[doc = ""]
75     #[doc = "*This API requires the following crate features to be activated: `WebSocketElement`*"]
set_onclose(this: &WebSocket, value: Option<&::js_sys::Function>)76     pub fn msgsent(&mut self, val: u32) -> &mut Self {
77         use wasm_bindgen::JsValue;
78         let r = ::js_sys::Reflect::set(
79             self.as_ref(),
80             &JsValue::from("msgsent"),
81             &JsValue::from(val),
82         );
83         debug_assert!(
84             r.is_ok(),
85             "setting properties should never fail on our dictionary objects"
86         );
87         let _ = r;
88         self
89     }
protocol(this: &WebSocket) -> String90     #[doc = "Change the `receivedsize` field of this object."]
91     #[doc = ""]
92     #[doc = "*This API requires the following crate features to be activated: `WebSocketElement`*"]
93     pub fn receivedsize(&mut self, val: f64) -> &mut Self {
94         use wasm_bindgen::JsValue;
95         let r = ::js_sys::Reflect::set(
96             self.as_ref(),
97             &JsValue::from("receivedsize"),
98             &JsValue::from(val),
99         );
100         debug_assert!(
101             r.is_ok(),
102             "setting properties should never fail on our dictionary objects"
103         );
104         let _ = r;
105         self
106     }
107     #[doc = "Change the `sentsize` field of this object."]
108     #[doc = ""]
109     #[doc = "*This API requires the following crate features to be activated: `WebSocketElement`*"]
110     pub fn sentsize(&mut self, val: f64) -> &mut Self {
111         use wasm_bindgen::JsValue;
binary_type(this: &WebSocket) -> BinaryType112         let r = ::js_sys::Reflect::set(
113             self.as_ref(),
114             &JsValue::from("sentsize"),
115             &JsValue::from(val),
116         );
117         debug_assert!(
118             r.is_ok(),
119             "setting properties should never fail on our dictionary objects"
set_binary_type(this: &WebSocket, value: BinaryType)120         );
121         let _ = r;
122         self
123     }
124 }
125 impl Default for WebSocketElement {
126     fn default() -> Self {
new(url: &str) -> Result<WebSocket, JsValue>127         Self::new()
128     }
129 }
130