aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/websocket.rs
diff options
context:
space:
mode:
authorBogdan Cuza <boghison22@gmail.com>2015-08-05 18:31:42 +0300
committerBogdan Cuza <boghison22@gmail.com>2015-08-13 21:44:41 +0300
commit45145108daa6af7e834a7c23530857c504b54b9c (patch)
treeabc5db1c178435c5192e20049b4b51b196e7b26b /components/script/dom/websocket.rs
parent94c8dcd575a5187e02ec043c686b1cdfa6b30ba6 (diff)
downloadservo-45145108daa6af7e834a7c23530857c504b54b9c.tar.gz
servo-45145108daa6af7e834a7c23530857c504b54b9c.zip
Measure heap memory usage for more types. Fixes #6951
Diffstat (limited to 'components/script/dom/websocket.rs')
-rw-r--r--components/script/dom/websocket.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/components/script/dom/websocket.rs b/components/script/dom/websocket.rs
index ce515d0f276..13f751388f8 100644
--- a/components/script/dom/websocket.rs
+++ b/components/script/dom/websocket.rs
@@ -48,7 +48,7 @@ use std::borrow::ToOwned;
use std::cell::{Cell, RefCell};
use std::sync::{Arc, Mutex};
-#[derive(JSTraceable, PartialEq, Copy, Clone, Debug)]
+#[derive(JSTraceable, PartialEq, Copy, Clone, Debug, HeapSizeOf)]
enum WebSocketRequestState {
Connecting = 0,
Open = 1,
@@ -58,17 +58,20 @@ enum WebSocketRequestState {
no_jsmanaged_fields!(Sender<WebSocketStream>);
+#[derive(HeapSizeOf)]
enum MessageData {
Text(String),
Binary(Vec<u8>),
}
#[dom_struct]
+#[derive(HeapSizeOf)]
pub struct WebSocket {
eventtarget: EventTarget,
url: Url,
global: GlobalField,
ready_state: Cell<WebSocketRequestState>,
+ #[ignore_heap_size_of = "Defined in std"]
sender: RefCell<Option<Arc<Mutex<Sender<WebSocketStream>>>>>,
failed: Cell<bool>, //Flag to tell if websocket was closed due to failure
full: Cell<bool>, //Flag to tell if websocket queue is full