Skip to content
Permalink
Browse files

make changes according to code review (#8097)

  • Loading branch information...
ajnirp committed Oct 23, 2015
1 parent d9f8f68 commit fe59b62db7e342abdc7b706a633ec4cfb9448b1b
Showing with 26 additions and 15 deletions.
  1. +26 −15 components/script/dom/bindings/js.rs
@@ -251,11 +251,6 @@ impl<T: Reflectable> MutHeap<JS<T>> {
ptr::read(self.val.get()).root()
}
}

/// Compare this object to an `&T` value.
fn eq(&self, other: &T) -> bool {
self.get() == Root::from_ref(other)
}
}

impl<T: HeapGCValue> HeapSizeOf for MutHeap<T> {
@@ -267,7 +262,17 @@ impl<T: HeapGCValue> HeapSizeOf for MutHeap<T> {

impl<T: Reflectable> PartialEq for MutHeap<JS<T>> {
fn eq(&self, other: &Self) -> bool {
self.get().eq(&other.get())
unsafe {
*self.val.get() == *other.val.get()
}
}
}

impl<T: Reflectable> PartialEq<T> for MutHeap<JS<T>> {
fn eq(&self, other: &T) -> bool {
unsafe {
*self.val.get() == JS::from_ref(other)
}
}
}

@@ -331,9 +336,21 @@ impl<T: Reflectable> MutNullableHeap<JS<T>> {
}
}

/// Compare this object to an `Option<&T>` value.
fn equal(&self, other: Option<&T>) -> bool {
self.get() == other.map(|p| Root::from_ref(p))
}

impl<T: Reflectable> PartialEq for MutNullableHeap<JS<T>> {
fn eq(&self, other: &Self) -> bool {
unsafe {
*self.ptr.get() == *other.ptr.get()
}
}
}

impl<'a, T: Reflectable> PartialEq<Option<&'a T>> for MutNullableHeap<JS<T>> {
fn eq(&self, other: &Option<&T>) -> bool {
unsafe {
*self.ptr.get() == other.map(|p| JS::from_ref(p))
}
}
}

@@ -353,12 +370,6 @@ impl<T: HeapGCValue> HeapSizeOf for MutNullableHeap<T> {
}
}

impl<T: Reflectable> PartialEq for MutNullableHeap<JS<T>> {
fn eq(&self, other: &Self) -> bool {
self.get().eq(&other.get())
}
}

impl<T: Reflectable> LayoutJS<T> {
/// Returns an unsafe pointer to the interior of this JS object. This is
/// the only method that be safely accessed from layout. (The fact that

0 comments on commit fe59b62

Please sign in to comment.
You can’t perform that action at this time.