aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/bindings/global.rs
diff options
context:
space:
mode:
authorbors-servo <metajack+bors@gmail.com>2015-08-13 13:16:14 -0600
committerbors-servo <metajack+bors@gmail.com>2015-08-13 13:16:14 -0600
commita03616f379c255cc6c9b6e1d04dd7d98bd9926ce (patch)
tree0081f3c1bb513706b406a61fba0f73449cbc5ba4 /components/script/dom/bindings/global.rs
parentf3b7c5cb4b0fab20db51b7560c3b3bb2d115be69 (diff)
parent45145108daa6af7e834a7c23530857c504b54b9c (diff)
downloadservo-a03616f379c255cc6c9b6e1d04dd7d98bd9926ce.tar.gz
servo-a03616f379c255cc6c9b6e1d04dd7d98bd9926ce.zip
Auto merge of #7097 - boghison:memtypes, r=jdm
Measure heap memory usage for more types. Fixes #6951 Also adds HeapSizeOf implementations/derive for some types. I've used "Cannot calculate Heap size" as a reason everywhere, because my imagination is rather limited. If you'd like me to change this message for specific types, please write something like this: "Trusted - Cannot calculate Heap size for Trusted" so that it would be easier for me to replace them through a script :) <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7097) <!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/bindings/global.rs')
-rw-r--r--components/script/dom/bindings/global.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/components/script/dom/bindings/global.rs b/components/script/dom/bindings/global.rs
index 053059cec9f..6412a47cbb0 100644
--- a/components/script/dom/bindings/global.rs
+++ b/components/script/dom/bindings/global.rs
@@ -27,6 +27,8 @@ use js::jsapi::{GetGlobalForObjectCrossCompartment};
use js::jsapi::{JSContext, JSObject, JS_GetClass, MutableHandleValue};
use url::Url;
+use util::mem::HeapSizeOf;
+
/// A freely-copyable reference to a rooted global object.
#[derive(Copy, Clone)]
pub enum GlobalRef<'a> {
@@ -47,7 +49,7 @@ pub enum GlobalRoot {
/// A traced reference to a global object, for use in fields of traced Rust
/// structures.
-#[derive(JSTraceable)]
+#[derive(JSTraceable, HeapSizeOf)]
#[must_root]
pub enum GlobalField {
/// A field for a `Window` object.