aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/script/dom/bindings/trace.rs
diff options
context:
space:
mode:
authorTetsuharu OHZEKI <saneyuki.snyk@gmail.com>2014-05-28 04:26:03 +0900
committerTetsuharu OHZEKI <saneyuki.snyk@gmail.com>2014-05-30 03:38:41 +0900
commit5ae7c4cbb158a3ef1843f3d732b735f5e8974029 (patch)
tree9e18701f35a874560784d4e4c1b2c1b410ca9566 /src/components/script/dom/bindings/trace.rs
parentbf05e6a9e220a576360049423e1adce9e8749087 (diff)
downloadservo-5ae7c4cbb158a3ef1843f3d732b735f5e8974029.tar.gz
servo-5ae7c4cbb158a3ef1843f3d732b735f5e8974029.zip
Make 'RefCell<Vec<JS<T>>>' traceable.
Diffstat (limited to 'src/components/script/dom/bindings/trace.rs')
-rw-r--r--src/components/script/dom/bindings/trace.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/components/script/dom/bindings/trace.rs b/src/components/script/dom/bindings/trace.rs
index c422a5a0fc4..1cc17474973 100644
--- a/src/components/script/dom/bindings/trace.rs
+++ b/src/components/script/dom/bindings/trace.rs
@@ -167,3 +167,10 @@ impl<T: Reflectable+Encodable<S, E>, S: Encoder<E>, E> Encodable<S, E> for Cell<
self.get().encode(s)
}
}
+
+/// for a field which contains non-POD type contains DOMType
+impl<T: Reflectable+Encodable<S, E>, S: Encoder<E>, E> Encodable<S, E> for RefCell<Vec<JS<T>>> {
+ fn encode(&self, s: &mut S) -> Result<(), E> {
+ self.borrow().encode(s)
+ }
+}