aboutsummaryrefslogtreecommitdiffstats
path: root/components/servo_arc/lib.rs
diff options
context:
space:
mode:
authorBobby Holley <bobbyholley@gmail.com>2017-05-26 14:56:26 +0200
committerBobby Holley <bobbyholley@gmail.com>2017-07-12 16:38:06 -0700
commit06140105524fb38693c47f7361c0fc3e2865b79d (patch)
tree70e821de6dd038c25bc32f7f9480210c43c5c2a7 /components/servo_arc/lib.rs
parentd1c31f7eafed2708354423852642c3dd8efe077a (diff)
downloadservo-06140105524fb38693c47f7361c0fc3e2865b79d.tar.gz
servo-06140105524fb38693c47f7361c0fc3e2865b79d.zip
Store the bloom filter in TLS and reuse it across traversals.
MozReview-Commit-ID: EbzDehr2Y2L
Diffstat (limited to 'components/servo_arc/lib.rs')
-rw-r--r--components/servo_arc/lib.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/components/servo_arc/lib.rs b/components/servo_arc/lib.rs
index 5dc261eefb6..ff4074767f8 100644
--- a/components/servo_arc/lib.rs
+++ b/components/servo_arc/lib.rs
@@ -31,6 +31,7 @@ use heapsize::HeapSizeOf;
use nodrop::NoDrop;
#[cfg(feature = "servo")]
use serde::{Deserialize, Serialize};
+use stable_deref_trait::{CloneStableDeref, StableDeref};
use std::{isize, usize};
use std::borrow;
use std::cmp::Ordering;
@@ -433,6 +434,9 @@ impl<T: ?Sized> AsRef<T> for Arc<T> {
}
}
+unsafe impl<T: ?Sized> StableDeref for Arc<T> {}
+unsafe impl<T: ?Sized> CloneStableDeref for Arc<T> {}
+
// This is what the HeapSize crate does for regular arc, but is questionably
// sound. See https://github.com/servo/heapsize/issues/37
#[cfg(feature = "servo")]