diff options
author | Anthony Ramine <nox@nox.paris> | 2020-03-26 13:17:46 +0100 |
---|---|---|
committer | Anthony Ramine <nox@nox.paris> | 2020-03-26 13:17:46 +0100 |
commit | 04af32128c10f8a67e8c012e68359169bbb8ef5e (patch) | |
tree | 2091f392710a4a36389b0e98edaf792f5a3e71e9 /components/layout_thread/dom_wrapper.rs | |
parent | 2d055cbf6b8114bcc4f941b6f206f8e8014cc31a (diff) | |
download | servo-04af32128c10f8a67e8c012e68359169bbb8ef5e.tar.gz servo-04af32128c10f8a67e8c012e68359169bbb8ef5e.zip |
Add a 'dom lifetime to GetLayoutData
Diffstat (limited to 'components/layout_thread/dom_wrapper.rs')
-rw-r--r-- | components/layout_thread/dom_wrapper.rs | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/components/layout_thread/dom_wrapper.rs b/components/layout_thread/dom_wrapper.rs index c47635afedb..bc858cf329a 100644 --- a/components/layout_thread/dom_wrapper.rs +++ b/components/layout_thread/dom_wrapper.rs @@ -308,7 +308,7 @@ impl<'ln> TNode for ServoLayoutNode<'ln> { } } -impl<'ln> LayoutNode for ServoLayoutNode<'ln> { +impl<'ln> LayoutNode<'ln> for ServoLayoutNode<'ln> { type ConcreteThreadSafeLayoutNode = ServoThreadSafeLayoutNode<'ln>; fn to_threadsafe(&self) -> Self::ConcreteThreadSafeLayoutNode { @@ -342,25 +342,25 @@ impl<'ln> LayoutNode for ServoLayoutNode<'ln> { } } -impl<'ln> GetLayoutData for ServoLayoutNode<'ln> { +impl<'ln> GetLayoutData<'ln> for ServoLayoutNode<'ln> { fn get_style_and_layout_data(&self) -> Option<OpaqueStyleAndLayoutData> { unsafe { self.get_jsmanaged().get_style_and_layout_data() } } } -impl<'le> GetLayoutData for ServoLayoutElement<'le> { +impl<'le> GetLayoutData<'le> for ServoLayoutElement<'le> { fn get_style_and_layout_data(&self) -> Option<OpaqueStyleAndLayoutData> { self.as_node().get_style_and_layout_data() } } -impl<'ln> GetLayoutData for ServoThreadSafeLayoutNode<'ln> { +impl<'ln> GetLayoutData<'ln> for ServoThreadSafeLayoutNode<'ln> { fn get_style_and_layout_data(&self) -> Option<OpaqueStyleAndLayoutData> { self.node.get_style_and_layout_data() } } -impl<'le> GetLayoutData for ServoThreadSafeLayoutElement<'le> { +impl<'le> GetLayoutData<'le> for ServoThreadSafeLayoutElement<'le> { fn get_style_and_layout_data(&self) -> Option<OpaqueStyleAndLayoutData> { self.element.as_node().get_style_and_layout_data() } @@ -1049,7 +1049,7 @@ impl<'a> PartialEq for ServoThreadSafeLayoutNode<'a> { } } -impl<'ln> DangerousThreadSafeLayoutNode for ServoThreadSafeLayoutNode<'ln> { +impl<'ln> DangerousThreadSafeLayoutNode<'ln> for ServoThreadSafeLayoutNode<'ln> { unsafe fn dangerous_first_child(&self) -> Option<Self> { self.get_jsmanaged() .first_child_ref() @@ -1099,7 +1099,7 @@ impl<'ln> NodeInfo for ServoThreadSafeLayoutNode<'ln> { } } -impl<'ln> ThreadSafeLayoutNode for ServoThreadSafeLayoutNode<'ln> { +impl<'ln> ThreadSafeLayoutNode<'ln> for ServoThreadSafeLayoutNode<'ln> { type ConcreteNode = ServoLayoutNode<'ln>; type ConcreteThreadSafeLayoutElement = ServoThreadSafeLayoutElement<'ln>; type ConcreteElement = ServoLayoutElement<'ln>; @@ -1255,14 +1255,14 @@ impl<'ln> ThreadSafeLayoutNode for ServoThreadSafeLayoutNode<'ln> { } } -pub struct ThreadSafeLayoutNodeChildrenIterator<ConcreteNode: ThreadSafeLayoutNode> { +pub struct ThreadSafeLayoutNodeChildrenIterator<ConcreteNode> { current_node: Option<ConcreteNode>, parent_node: ConcreteNode, } -impl<ConcreteNode> ThreadSafeLayoutNodeChildrenIterator<ConcreteNode> +impl<'dom, ConcreteNode> ThreadSafeLayoutNodeChildrenIterator<ConcreteNode> where - ConcreteNode: DangerousThreadSafeLayoutNode, + ConcreteNode: DangerousThreadSafeLayoutNode<'dom>, { pub fn new(parent: ConcreteNode) -> Self { let first_child: Option<ConcreteNode> = match parent.get_pseudo_element_type() { @@ -1282,9 +1282,9 @@ where } } -impl<ConcreteNode> Iterator for ThreadSafeLayoutNodeChildrenIterator<ConcreteNode> +impl<'dom, ConcreteNode> Iterator for ThreadSafeLayoutNodeChildrenIterator<ConcreteNode> where - ConcreteNode: DangerousThreadSafeLayoutNode, + ConcreteNode: DangerousThreadSafeLayoutNode<'dom>, { type Item = ConcreteNode; fn next(&mut self) -> Option<ConcreteNode> { @@ -1366,7 +1366,7 @@ pub struct ServoThreadSafeLayoutElement<'le> { pseudo: PseudoElementType, } -impl<'le> ThreadSafeLayoutElement for ServoThreadSafeLayoutElement<'le> { +impl<'le> ThreadSafeLayoutElement<'le> for ServoThreadSafeLayoutElement<'le> { type ConcreteThreadSafeLayoutNode = ServoThreadSafeLayoutNode<'le>; type ConcreteElement = ServoLayoutElement<'le>; |