diff options
Diffstat (limited to 'src/components/script/dom/node.rs')
-rw-r--r-- | src/components/script/dom/node.rs | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/components/script/dom/node.rs b/src/components/script/dom/node.rs index 419b02c844a..1aa4a0ff825 100644 --- a/src/components/script/dom/node.rs +++ b/src/components/script/dom/node.rs @@ -332,7 +332,7 @@ impl NodeHelpers for JS<Node> { fn parent_node(&self) -> Option<JS<Node>> { self.get().parent_node.clone() } - + fn first_child(&self) -> Option<JS<Node>> { self.get().first_child.clone() } @@ -1590,6 +1590,31 @@ impl Node { pub fn set_hover_state(&mut self, state: bool) { self.flags.set_is_in_hover_state(state); } + + #[inline] + pub fn parent_node_ref<'a>(&'a self) -> Option<&'a JS<Node>> { + self.parent_node.as_ref() + } + + #[inline] + pub fn first_child_ref<'a>(&'a self) -> Option<&'a JS<Node>> { + self.first_child.as_ref() + } + + #[inline] + pub fn last_child_ref<'a>(&'a self) -> Option<&'a JS<Node>> { + self.last_child.as_ref() + } + + #[inline] + pub fn prev_sibling_ref<'a>(&'a self) -> Option<&'a JS<Node>> { + self.prev_sibling.as_ref() + } + + #[inline] + pub fn next_sibling_ref<'a>(&'a self) -> Option<&'a JS<Node>> { + self.next_sibling.as_ref() + } } impl Reflectable for Node { |