aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/node.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/node.rs')
-rw-r--r--components/script/dom/node.rs75
1 files changed, 42 insertions, 33 deletions
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index 6d3c7e5381f..15b261b79d8 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -230,11 +230,11 @@ impl Node {
assert!(new_child.next_sibling.get().is_none());
match before {
Some(ref before) => {
- assert!(before.parent_node.get().r() == Some(self));
+ assert!(before.parent_node.get().deref() == Some(self));
let prev_sibling = before.GetPreviousSibling();
match prev_sibling {
None => {
- assert!(Some(*before) == self.first_child.get().r());
+ assert!(self.first_child.get().deref() == Some(*before));
self.first_child.set(Some(new_child));
},
Some(ref prev_sibling) => {
@@ -276,27 +276,36 @@ impl Node {
///
/// Fails unless `child` is a child of this node.
fn remove_child(&self, child: &Node, cached_index: Option<u32>) {
- assert!(child.parent_node.get().r() == Some(self));
+ assert!(child.parent_node.get().deref() == Some(self));
let prev_sibling = child.GetPreviousSibling();
match prev_sibling {
None => {
- self.first_child.set(child.next_sibling.get().r());
+ self.first_child.set(child.next_sibling.get().deref());
},
Some(ref prev_sibling) => {
- prev_sibling.next_sibling.set(child.next_sibling.get().r());
+ prev_sibling
+ .next_sibling
+ .set(child.next_sibling.get().deref());
},
}
let next_sibling = child.GetNextSibling();
match next_sibling {
None => {
- self.last_child.set(child.prev_sibling.get().r());
+ self.last_child.set(child.prev_sibling.get().deref());
},
Some(ref next_sibling) => {
- next_sibling.prev_sibling.set(child.prev_sibling.get().r());
+ next_sibling
+ .prev_sibling
+ .set(child.prev_sibling.get().deref());
},
}
- let context = UnbindContext::new(self, prev_sibling.r(), next_sibling.r(), cached_index);
+ let context = UnbindContext::new(
+ self,
+ prev_sibling.deref(),
+ next_sibling.deref(),
+ cached_index,
+ );
child.prev_sibling.set(None);
child.next_sibling.set(None);
@@ -678,7 +687,7 @@ impl Node {
document != window.Document(),
is_body_element,
document.quirks_mode(),
- html_element.r() == self.downcast::<Element>(),
+ html_element.deref() == self.downcast::<Element>(),
) {
// Step 2 && Step 5
(true, _, _, _) | (_, false, QuirksMode::Quirks, true) => Rect::zero(),
@@ -725,7 +734,7 @@ impl Node {
};
// Step 6.
- Node::pre_insert(&node, &parent, viable_previous_sibling.r())?;
+ Node::pre_insert(&node, &parent, viable_previous_sibling.deref())?;
Ok(())
}
@@ -748,7 +757,7 @@ impl Node {
let node = self.owner_doc().node_from_nodes_and_strings(nodes)?;
// Step 5.
- Node::pre_insert(&node, &parent, viable_next_sibling.r())?;
+ Node::pre_insert(&node, &parent, viable_next_sibling.deref())?;
Ok(())
}
@@ -771,7 +780,7 @@ impl Node {
parent.ReplaceChild(&node, self)?;
} else {
// Step 6.
- Node::pre_insert(&node, &parent, viable_next_sibling.r())?;
+ Node::pre_insert(&node, &parent, viable_next_sibling.deref())?;
}
Ok(())
}
@@ -783,7 +792,7 @@ impl Node {
let node = doc.node_from_nodes_and_strings(nodes)?;
// Step 2.
let first_child = self.first_child.get();
- Node::pre_insert(&node, self, first_child.r()).map(|_| ())
+ Node::pre_insert(&node, self, first_child.deref()).map(|_| ())
}
// https://dom.spec.whatwg.org/#dom-parentnode-append
@@ -968,7 +977,7 @@ impl Node {
None => return Err(Error::IndexSize),
Some(node) => node,
};
- self.InsertBefore(tr_node, node.r())?;
+ self.InsertBefore(tr_node, node.deref())?;
}
}
@@ -1667,7 +1676,7 @@ impl Node {
let reference_child = match child {
Some(child) if child == node => {
reference_child_root = node.GetNextSibling();
- reference_child_root.r()
+ reference_child_root.deref()
},
_ => child,
};
@@ -1697,7 +1706,7 @@ impl Node {
) {
node.owner_doc().add_script_and_layout_blocker();
debug_assert!(&*node.owner_doc() == &*parent.owner_doc());
- debug_assert!(child.map_or(true, |child| Some(parent) == child.GetParentNode().r()));
+ debug_assert!(child.map_or(true, |child| Some(parent) == child.GetParentNode().deref()));
// Step 1.
let count = if node.is::<DocumentFragment>() {
@@ -1718,8 +1727,8 @@ impl Node {
// Step 3.
new_nodes.extend(node.children().map(|kid| Dom::from_ref(&*kid)));
// Step 4.
- for kid in new_nodes.r() {
- Node::remove(*kid, node, SuppressObserver::Suppressed);
+ for kid in &*new_nodes {
+ Node::remove(kid, node, SuppressObserver::Suppressed);
}
// Step 5.
vtable_for(&node).children_changed(&ChildrenMutation::replace_all(new_nodes.r(), &[]));
@@ -1772,7 +1781,7 @@ impl Node {
}
if let SuppressObserver::Unsuppressed = suppress_observers {
vtable_for(&parent).children_changed(&ChildrenMutation::insert(
- previous_sibling.r(),
+ previous_sibling.deref(),
new_nodes,
child,
));
@@ -1780,7 +1789,7 @@ impl Node {
let mutation = Mutation::ChildList {
added: Some(new_nodes),
removed: None,
- prev: previous_sibling.r(),
+ prev: previous_sibling.deref(),
next: child,
};
MutationObserver::queue_a_mutation_record(&parent, mutation);
@@ -1810,8 +1819,8 @@ impl Node {
&[] as &[&Node]
};
// Step 4.
- for child in removed_nodes.r() {
- Node::remove(*child, parent, SuppressObserver::Suppressed);
+ for child in &*removed_nodes {
+ Node::remove(child, parent, SuppressObserver::Suppressed);
}
// Step 5.
if let Some(node) = node {
@@ -1883,18 +1892,18 @@ impl Node {
// Step 12.
if let SuppressObserver::Unsuppressed = suppress_observers {
vtable_for(&parent).children_changed(&ChildrenMutation::replace(
- old_previous_sibling.r(),
+ old_previous_sibling.deref(),
&Some(&node),
&[],
- old_next_sibling.r(),
+ old_next_sibling.deref(),
));
let removed = [node];
let mutation = Mutation::ChildList {
added: None,
removed: Some(&removed),
- prev: old_previous_sibling.r(),
- next: old_next_sibling.r(),
+ prev: old_previous_sibling.deref(),
+ next: old_next_sibling.deref(),
};
MutationObserver::queue_a_mutation_record(&parent, mutation);
}
@@ -2204,7 +2213,7 @@ impl NodeMethods for Node {
};
// Step 3.
- Node::replace_all(node.r(), self);
+ Node::replace_all(node.deref(), self);
},
NodeTypeId::CharacterData(..) => {
let characterdata = self.downcast::<CharacterData>().unwrap();
@@ -2308,10 +2317,10 @@ impl NodeMethods for Node {
// Step 7-8.
let child_next_sibling = child.GetNextSibling();
let node_next_sibling = node.GetNextSibling();
- let reference_child = if child_next_sibling.r() == Some(node) {
- node_next_sibling.r()
+ let reference_child = if child_next_sibling.deref() == Some(node) {
+ node_next_sibling.deref()
} else {
- child_next_sibling.r()
+ child_next_sibling.deref()
};
// Step 9.
@@ -2343,7 +2352,7 @@ impl NodeMethods for Node {
// Step 14.
vtable_for(&self).children_changed(&ChildrenMutation::replace(
- previous_sibling.r(),
+ previous_sibling.deref(),
&removed_child,
nodes,
reference_child,
@@ -2352,7 +2361,7 @@ impl NodeMethods for Node {
let mutation = Mutation::ChildList {
added: Some(nodes),
removed: removed.as_ref().map(|r| &r[..]),
- prev: previous_sibling.r(),
+ prev: previous_sibling.deref(),
next: reference_child,
};
MutationObserver::queue_a_mutation_record(&self, mutation);
@@ -3014,7 +3023,7 @@ where
if head_node == node {
head += 1;
}
- if elem_node == node.r() || head == self.len() {
+ if elem_node == &*node || head == self.len() {
break;
}
}