diff options
author | Anthony Ramine <nox@nox.paris> | 2020-04-06 12:06:00 +0200 |
---|---|---|
committer | Anthony Ramine <nox@nox.paris> | 2020-04-06 12:39:52 +0200 |
commit | e3be136c9b9d44ed0977780de8e8a8b17e279460 (patch) | |
tree | 3ccceef96280cb9f23a2ed58f095c4adafac92bc | |
parent | 3df65c02fe73a4cce9e391fa1de0b9a4d613c51b (diff) | |
download | servo-e3be136c9b9d44ed0977780de8e8a8b17e279460.tar.gz servo-e3be136c9b9d44ed0977780de8e8a8b17e279460.zip |
Rename a bunch of style/layout data items
GetLayoutData::get_style_and_layout_data becomes
GetOpaqueStyleAndLayoutData::get_opaque_style_and_layout_data.
GetRawData::get_raw_data becomes GetStyleAndLayoutData::get_style_and_layout_data.
LayoutNode::init_style_and_layout_data becomes
LayoutNode::init_opaque_style_and_layout_data.
LayoutNode::take_style_and_layout_data becomes
LayoutNode::take_opaque_style_and_layout_data.
-rw-r--r-- | components/layout/query.rs | 17 | ||||
-rw-r--r-- | components/layout/traversal.rs | 4 | ||||
-rw-r--r-- | components/layout/wrapper.rs | 24 | ||||
-rw-r--r-- | components/layout_2020/dom_traversal.rs | 4 | ||||
-rw-r--r-- | components/layout_2020/traversal.rs | 4 | ||||
-rw-r--r-- | components/layout_2020/wrapper.rs | 14 | ||||
-rw-r--r-- | components/layout_thread/dom_wrapper.rs | 50 | ||||
-rw-r--r-- | components/layout_thread_2020/dom_wrapper.rs | 50 | ||||
-rw-r--r-- | components/script/dom/node.rs | 12 | ||||
-rw-r--r-- | components/script_layout_interface/wrapper_traits.rs | 21 |
10 files changed, 105 insertions, 95 deletions
diff --git a/components/layout/query.rs b/components/layout/query.rs index b1e33a1dedf..44c5e4c21fd 100644 --- a/components/layout/query.rs +++ b/components/layout/query.rs @@ -1037,13 +1037,16 @@ fn inner_text_collection_steps<'dom>( }; let element_data = { - &node.get_style_and_layout_data().as_ref().map(|opaque| { - &opaque - .downcast_ref::<StyleAndLayoutData>() - .unwrap() - .style_data - .element_data - }) + &node + .get_opaque_style_and_layout_data() + .as_ref() + .map(|opaque| { + &opaque + .downcast_ref::<StyleAndLayoutData>() + .unwrap() + .style_data + .element_data + }) }; if element_data.is_none() { diff --git a/components/layout/traversal.rs b/components/layout/traversal.rs index 244531cee46..4fb3838d18e 100644 --- a/components/layout/traversal.rs +++ b/components/layout/traversal.rs @@ -9,7 +9,7 @@ use crate::context::LayoutContext; use crate::display_list::DisplayListBuildState; use crate::flow::{Flow, FlowFlags, GetBaseFlow, ImmutableFlowUtils}; use crate::wrapper::ThreadSafeLayoutNodeHelpers; -use crate::wrapper::{GetRawData, LayoutNodeLayoutData}; +use crate::wrapper::{GetStyleAndLayoutData, LayoutNodeLayoutData}; use script_layout_interface::wrapper_traits::{LayoutNode, ThreadSafeLayoutNode}; use servo_config::opts; use style::context::{SharedStyleContext, StyleContext}; @@ -73,7 +73,7 @@ where // flow construction: // (1) They child doesn't yet have layout data (preorder traversal initializes it). // (2) The parent element has restyle damage (so the text flow also needs fixup). - node.get_raw_data().is_none() || !parent_data.damage.is_empty() + node.get_style_and_layout_data().is_none() || !parent_data.damage.is_empty() } fn shared_context(&self) -> &SharedStyleContext { diff --git a/components/layout/wrapper.rs b/components/layout/wrapper.rs index 04648ad3abf..bd6203bb84c 100644 --- a/components/layout/wrapper.rs +++ b/components/layout/wrapper.rs @@ -32,7 +32,7 @@ use crate::data::{LayoutData, LayoutDataFlags, StyleAndLayoutData}; use atomic_refcell::{AtomicRef, AtomicRefMut}; -use script_layout_interface::wrapper_traits::GetLayoutData; +use script_layout_interface::wrapper_traits::GetOpaqueStyleAndLayoutData; use script_layout_interface::wrapper_traits::{ThreadSafeLayoutElement, ThreadSafeLayoutNode}; use style::dom::{NodeInfo, TNode}; use style::selector_parser::RestyleDamage; @@ -47,14 +47,16 @@ pub trait LayoutNodeLayoutData<'dom> { impl<'dom, T> LayoutNodeLayoutData<'dom> for T where - T: GetLayoutData<'dom>, + T: GetOpaqueStyleAndLayoutData<'dom>, { fn borrow_layout_data(self) -> Option<AtomicRef<'dom, LayoutData>> { - self.get_raw_data().map(|d| d.layout_data.borrow()) + self.get_style_and_layout_data() + .map(|d| d.layout_data.borrow()) } fn mutate_layout_data(self) -> Option<AtomicRefMut<'dom, LayoutData>> { - self.get_raw_data().map(|d| d.layout_data.borrow_mut()) + self.get_style_and_layout_data() + .map(|d| d.layout_data.borrow_mut()) } fn flow_debug_id(self) -> usize { @@ -63,16 +65,16 @@ where } } -pub trait GetRawData<'dom> { - fn get_raw_data(self) -> Option<&'dom StyleAndLayoutData>; +pub trait GetStyleAndLayoutData<'dom> { + fn get_style_and_layout_data(self) -> Option<&'dom StyleAndLayoutData>; } -impl<'dom, T> GetRawData<'dom> for T +impl<'dom, T> GetStyleAndLayoutData<'dom> for T where - T: GetLayoutData<'dom>, + T: GetOpaqueStyleAndLayoutData<'dom>, { - fn get_raw_data(self) -> Option<&'dom StyleAndLayoutData> { - self.get_style_and_layout_data() + fn get_style_and_layout_data(self) -> Option<&'dom StyleAndLayoutData> { + self.get_opaque_style_and_layout_data() .map(|opaque| opaque.downcast_ref().unwrap()) } } @@ -143,7 +145,7 @@ where } let damage = { - let data = node.get_raw_data().unwrap(); + let data = node.get_style_and_layout_data().unwrap(); if !data .layout_data diff --git a/components/layout_2020/dom_traversal.rs b/components/layout_2020/dom_traversal.rs index 8ea6bb01de7..ce5f9799743 100644 --- a/components/layout_2020/dom_traversal.rs +++ b/components/layout_2020/dom_traversal.rs @@ -8,7 +8,7 @@ use crate::element_data::{LayoutBox, LayoutDataForElement}; use crate::geom::PhysicalSize; use crate::replaced::{CanvasInfo, CanvasSource, ReplacedContent}; use crate::style_ext::{Display, DisplayGeneratingBox, DisplayInside, DisplayOutside}; -use crate::wrapper::GetRawData; +use crate::wrapper::GetStyleAndLayoutData; use atomic_refcell::AtomicRefMut; use html5ever::LocalName; use net_traits::image::base::Image as NetImage; @@ -448,7 +448,7 @@ where #[allow(unsafe_code)] fn layout_data_mut(self) -> AtomicRefMut<'dom, LayoutDataForElement> { - self.get_raw_data() + self.get_style_and_layout_data() .map(|d| d.layout_data.borrow_mut()) .unwrap() } diff --git a/components/layout_2020/traversal.rs b/components/layout_2020/traversal.rs index b57fe2b63f1..71f7a944247 100644 --- a/components/layout_2020/traversal.rs +++ b/components/layout_2020/traversal.rs @@ -3,7 +3,7 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ use crate::context::LayoutContext; -use crate::wrapper::GetRawData; +use crate::wrapper::GetStyleAndLayoutData; use script_layout_interface::wrapper_traits::LayoutNode; use style::context::{SharedStyleContext, StyleContext}; use style::data::ElementData; @@ -63,7 +63,7 @@ where } fn text_node_needs_traversal(node: E::ConcreteNode, parent_data: &ElementData) -> bool { - node.get_raw_data().is_none() || !parent_data.damage.is_empty() + node.get_style_and_layout_data().is_none() || !parent_data.damage.is_empty() } fn shared_context(&self) -> &SharedStyleContext { diff --git a/components/layout_2020/wrapper.rs b/components/layout_2020/wrapper.rs index e7c5ab5a7b1..45d121f2354 100644 --- a/components/layout_2020/wrapper.rs +++ b/components/layout_2020/wrapper.rs @@ -5,18 +5,18 @@ #![allow(unsafe_code)] use crate::data::StyleAndLayoutData; -use script_layout_interface::wrapper_traits::GetLayoutData; +use script_layout_interface::wrapper_traits::GetOpaqueStyleAndLayoutData; -pub trait GetRawData<'dom> { - fn get_raw_data(self) -> Option<&'dom StyleAndLayoutData>; +pub trait GetStyleAndLayoutData<'dom> { + fn get_style_and_layout_data(self) -> Option<&'dom StyleAndLayoutData>; } -impl<'dom, T> GetRawData<'dom> for T +impl<'dom, T> GetStyleAndLayoutData<'dom> for T where - T: GetLayoutData<'dom>, + T: GetOpaqueStyleAndLayoutData<'dom>, { - fn get_raw_data(self) -> Option<&'dom StyleAndLayoutData> { - self.get_style_and_layout_data() + fn get_style_and_layout_data(self) -> Option<&'dom StyleAndLayoutData> { + self.get_opaque_style_and_layout_data() .map(|opaque| opaque.downcast_ref().unwrap()) } } diff --git a/components/layout_thread/dom_wrapper.rs b/components/layout_thread/dom_wrapper.rs index 404200e9ae0..85f0802da6e 100644 --- a/components/layout_thread/dom_wrapper.rs +++ b/components/layout_thread/dom_wrapper.rs @@ -34,7 +34,7 @@ use atomic_refcell::{AtomicRef, AtomicRefMut}; use gfx_traits::ByteIndex; use html5ever::{LocalName, Namespace}; use layout::data::StyleAndLayoutData; -use layout::wrapper::GetRawData; +use layout::wrapper::GetStyleAndLayoutData; use msg::constellation_msg::{BrowsingContextId, PipelineId}; use net_traits::image::base::{Image, ImageMetadata}; use range::Range; @@ -50,7 +50,7 @@ use script::layout_exports::{ LayoutDom, LayoutElementHelpers, LayoutNodeHelpers, LayoutShadowRootHelpers, }; use script_layout_interface::wrapper_traits::{ - DangerousThreadSafeLayoutNode, GetLayoutData, LayoutNode, + DangerousThreadSafeLayoutNode, GetOpaqueStyleAndLayoutData, LayoutNode, }; use script_layout_interface::wrapper_traits::{ PseudoElementType, ThreadSafeLayoutElement, ThreadSafeLayoutNode, @@ -268,18 +268,18 @@ impl<'ln> LayoutNode<'ln> for ServoLayoutNode<'ln> { } unsafe fn initialize_data(&self) { - if self.get_raw_data().is_none() { + if self.get_style_and_layout_data().is_none() { let opaque = OpaqueStyleAndLayoutData::new(StyleAndLayoutData::new()); - self.init_style_and_layout_data(opaque); + self.init_opaque_style_and_layout_data(opaque); }; } - unsafe fn init_style_and_layout_data(&self, data: OpaqueStyleAndLayoutData) { - self.get_jsmanaged().init_style_and_layout_data(data); + unsafe fn init_opaque_style_and_layout_data(&self, data: OpaqueStyleAndLayoutData) { + self.get_jsmanaged().init_opaque_style_and_layout_data(data); } - unsafe fn take_style_and_layout_data(&self) -> OpaqueStyleAndLayoutData { - self.get_jsmanaged().take_style_and_layout_data() + unsafe fn take_opaque_style_and_layout_data(&self) -> OpaqueStyleAndLayoutData { + self.get_jsmanaged().take_opaque_style_and_layout_data() } fn is_connected(&self) -> bool { @@ -287,27 +287,27 @@ impl<'ln> LayoutNode<'ln> for ServoLayoutNode<'ln> { } } -impl<'dom> GetLayoutData<'dom> for ServoLayoutNode<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { - self.get_jsmanaged().get_style_and_layout_data() +impl<'dom> GetOpaqueStyleAndLayoutData<'dom> for ServoLayoutNode<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + self.get_jsmanaged().get_opaque_style_and_layout_data() } } -impl<'dom> GetLayoutData<'dom> for ServoLayoutElement<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { - self.as_node().get_style_and_layout_data() +impl<'dom> GetOpaqueStyleAndLayoutData<'dom> for ServoLayoutElement<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + self.as_node().get_opaque_style_and_layout_data() } } -impl<'dom> GetLayoutData<'dom> for ServoThreadSafeLayoutNode<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { - self.node.get_style_and_layout_data() +impl<'dom> GetOpaqueStyleAndLayoutData<'dom> for ServoThreadSafeLayoutNode<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + self.node.get_opaque_style_and_layout_data() } } -impl<'dom> GetLayoutData<'dom> for ServoThreadSafeLayoutElement<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { - self.element.as_node().get_style_and_layout_data() +impl<'dom> GetOpaqueStyleAndLayoutData<'dom> for ServoThreadSafeLayoutElement<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + self.element.as_node().get_opaque_style_and_layout_data() } } @@ -536,8 +536,8 @@ impl<'le> TElement for ServoLayoutElement<'le> { } unsafe fn clear_data(&self) { - if self.get_raw_data().is_some() { - drop(self.as_node().take_style_and_layout_data()); + if self.get_style_and_layout_data().is_some() { + drop(self.as_node().take_opaque_style_and_layout_data()); } } @@ -695,7 +695,7 @@ impl<'le> ServoLayoutElement<'le> { } fn get_style_data(&self) -> Option<&StyleData> { - self.get_style_and_layout_data().map(|opaque| { + self.get_opaque_style_and_layout_data().map(|opaque| { &opaque .downcast_ref::<StyleAndLayoutData>() .unwrap() @@ -1045,8 +1045,8 @@ impl<'ln> ThreadSafeLayoutNode<'ln> for ServoThreadSafeLayoutNode<'ln> { }) } - fn get_style_and_layout_data(self) -> Option<&'ln OpaqueStyleAndLayoutData> { - self.node.get_style_and_layout_data() + fn get_opaque_style_and_layout_data(self) -> Option<&'ln OpaqueStyleAndLayoutData> { + self.node.get_opaque_style_and_layout_data() } fn is_ignorable_whitespace(&self, context: &SharedStyleContext) -> bool { diff --git a/components/layout_thread_2020/dom_wrapper.rs b/components/layout_thread_2020/dom_wrapper.rs index d3fedcaf905..3937b23ef47 100644 --- a/components/layout_thread_2020/dom_wrapper.rs +++ b/components/layout_thread_2020/dom_wrapper.rs @@ -34,7 +34,7 @@ use atomic_refcell::{AtomicRef, AtomicRefMut}; use gfx_traits::ByteIndex; use html5ever::{LocalName, Namespace}; use layout::data::StyleAndLayoutData; -use layout::wrapper::GetRawData; +use layout::wrapper::GetStyleAndLayoutData; use msg::constellation_msg::{BrowsingContextId, PipelineId}; use net_traits::image::base::{Image, ImageMetadata}; use range::Range; @@ -50,7 +50,7 @@ use script::layout_exports::{ LayoutDom, LayoutElementHelpers, LayoutNodeHelpers, LayoutShadowRootHelpers, }; use script_layout_interface::wrapper_traits::{ - DangerousThreadSafeLayoutNode, GetLayoutData, LayoutNode, + DangerousThreadSafeLayoutNode, GetOpaqueStyleAndLayoutData, LayoutNode, }; use script_layout_interface::wrapper_traits::{ PseudoElementType, ThreadSafeLayoutElement, ThreadSafeLayoutNode, @@ -275,18 +275,18 @@ impl<'ln> LayoutNode<'ln> for ServoLayoutNode<'ln> { } unsafe fn initialize_data(&self) { - if self.get_raw_data().is_none() { + if self.get_style_and_layout_data().is_none() { let opaque = OpaqueStyleAndLayoutData::new(StyleAndLayoutData::new()); - self.init_style_and_layout_data(opaque); + self.init_opaque_style_and_layout_data(opaque); }; } - unsafe fn init_style_and_layout_data(&self, data: OpaqueStyleAndLayoutData) { - self.get_jsmanaged().init_style_and_layout_data(data); + unsafe fn init_opaque_style_and_layout_data(&self, data: OpaqueStyleAndLayoutData) { + self.get_jsmanaged().init_opaque_style_and_layout_data(data); } - unsafe fn take_style_and_layout_data(&self) -> OpaqueStyleAndLayoutData { - self.get_jsmanaged().take_style_and_layout_data() + unsafe fn take_opaque_style_and_layout_data(&self) -> OpaqueStyleAndLayoutData { + self.get_jsmanaged().take_opaque_style_and_layout_data() } fn is_connected(&self) -> bool { @@ -294,27 +294,27 @@ impl<'ln> LayoutNode<'ln> for ServoLayoutNode<'ln> { } } -impl<'dom> GetLayoutData<'dom> for ServoLayoutNode<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { - unsafe { self.get_jsmanaged().get_style_and_layout_data() } +impl<'dom> GetOpaqueStyleAndLayoutData<'dom> for ServoLayoutNode<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + unsafe { self.get_jsmanaged().get_opaque_style_and_layout_data() } } } -impl<'dom> GetLayoutData<'dom> for ServoLayoutElement<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { - self.as_node().get_style_and_layout_data() +impl<'dom> GetOpaqueStyleAndLayoutData<'dom> for ServoLayoutElement<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + self.as_node().get_opaque_style_and_layout_data() } } -impl<'dom> GetLayoutData<'dom> for ServoThreadSafeLayoutNode<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { - self.node.get_style_and_layout_data() +impl<'dom> GetOpaqueStyleAndLayoutData<'dom> for ServoThreadSafeLayoutNode<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + self.node.get_opaque_style_and_layout_data() } } -impl<'dom> GetLayoutData<'dom> for ServoThreadSafeLayoutElement<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { - self.element.as_node().get_style_and_layout_data() +impl<'dom> GetOpaqueStyleAndLayoutData<'dom> for ServoThreadSafeLayoutElement<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + self.element.as_node().get_opaque_style_and_layout_data() } } @@ -544,8 +544,8 @@ impl<'le> TElement for ServoLayoutElement<'le> { } unsafe fn clear_data(&self) { - if self.get_raw_data().is_some() { - drop(self.as_node().take_style_and_layout_data()); + if self.get_style_and_layout_data().is_some() { + drop(self.as_node().take_opaque_style_and_layout_data()); } } @@ -703,7 +703,7 @@ impl<'le> ServoLayoutElement<'le> { } fn get_style_data(&self) -> Option<&StyleData> { - self.get_style_and_layout_data().map(|opaque| { + self.get_opaque_style_and_layout_data().map(|opaque| { &opaque .downcast_ref::<StyleAndLayoutData>() .unwrap() @@ -1053,8 +1053,8 @@ impl<'ln> ThreadSafeLayoutNode<'ln> for ServoThreadSafeLayoutNode<'ln> { }) } - fn get_style_and_layout_data(self) -> Option<&'ln OpaqueStyleAndLayoutData> { - self.node.get_style_and_layout_data() + fn get_opaque_style_and_layout_data(self) -> Option<&'ln OpaqueStyleAndLayoutData> { + self.node.get_opaque_style_and_layout_data() } fn is_ignorable_whitespace(&self, context: &SharedStyleContext) -> bool { diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs index 8530078c919..99079062e17 100644 --- a/components/script/dom/node.rs +++ b/components/script/dom/node.rs @@ -1282,9 +1282,9 @@ pub trait LayoutNodeHelpers<'dom> { fn children_count(self) -> u32; - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData>; - unsafe fn init_style_and_layout_data(self, data: OpaqueStyleAndLayoutData); - unsafe fn take_style_and_layout_data(self) -> OpaqueStyleAndLayoutData; + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData>; + unsafe fn init_opaque_style_and_layout_data(self, data: OpaqueStyleAndLayoutData); + unsafe fn take_opaque_style_and_layout_data(self) -> OpaqueStyleAndLayoutData; fn text_content(self) -> Cow<'dom, str>; fn selection(self) -> Option<Range<usize>>; @@ -1410,13 +1410,13 @@ impl<'dom> LayoutNodeHelpers<'dom> for LayoutDom<'dom, Node> { #[inline] #[allow(unsafe_code)] - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData> { unsafe { (*self.unsafe_get().style_and_layout_data.get()).as_ref() } } #[inline] #[allow(unsafe_code)] - unsafe fn init_style_and_layout_data(self, val: OpaqueStyleAndLayoutData) { + unsafe fn init_opaque_style_and_layout_data(self, val: OpaqueStyleAndLayoutData) { let data = &mut *self.unsafe_get().style_and_layout_data.get(); debug_assert!(data.is_none()); *data = Some(val); @@ -1424,7 +1424,7 @@ impl<'dom> LayoutNodeHelpers<'dom> for LayoutDom<'dom, Node> { #[inline] #[allow(unsafe_code)] - unsafe fn take_style_and_layout_data(self) -> OpaqueStyleAndLayoutData { + unsafe fn take_opaque_style_and_layout_data(self) -> OpaqueStyleAndLayoutData { (*self.unsafe_get().style_and_layout_data.get()) .take() .unwrap() diff --git a/components/script_layout_interface/wrapper_traits.rs b/components/script_layout_interface/wrapper_traits.rs index 671dd1c8230..5d7768cbe12 100644 --- a/components/script_layout_interface/wrapper_traits.rs +++ b/components/script_layout_interface/wrapper_traits.rs @@ -79,13 +79,13 @@ impl PseudoElementType { } /// Trait to abstract access to layout data across various data structures. -pub trait GetLayoutData<'dom> { - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData>; +pub trait GetOpaqueStyleAndLayoutData<'dom> { + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData>; } /// A wrapper so that layout can access only the methods that it should have access to. Layout must /// only ever see these and must never see instances of `LayoutDom`. -pub trait LayoutNode<'dom>: Debug + GetLayoutData<'dom> + TNode { +pub trait LayoutNode<'dom>: Debug + GetOpaqueStyleAndLayoutData<'dom> + TNode { type ConcreteThreadSafeLayoutNode: ThreadSafeLayoutNode<'dom>; fn to_threadsafe(&self) -> Self::ConcreteThreadSafeLayoutNode; @@ -93,8 +93,8 @@ pub trait LayoutNode<'dom>: Debug + GetLayoutData<'dom> + TNode { fn type_id(&self) -> LayoutNodeType; unsafe fn initialize_data(&self); - unsafe fn init_style_and_layout_data(&self, data: OpaqueStyleAndLayoutData); - unsafe fn take_style_and_layout_data(&self) -> OpaqueStyleAndLayoutData; + unsafe fn init_opaque_style_and_layout_data(&self, data: OpaqueStyleAndLayoutData); + unsafe fn take_opaque_style_and_layout_data(&self) -> OpaqueStyleAndLayoutData; fn rev_children(self) -> LayoutIterator<ReverseChildrenIterator<Self>> { LayoutIterator(ReverseChildrenIterator { @@ -160,7 +160,7 @@ where /// A thread-safe version of `LayoutNode`, used during flow construction. This type of layout /// node does not allow any parents or siblings of nodes to be accessed, to avoid races. pub trait ThreadSafeLayoutNode<'dom>: - Clone + Copy + Debug + GetLayoutData<'dom> + NodeInfo + PartialEq + Sized + Clone + Copy + Debug + GetOpaqueStyleAndLayoutData<'dom> + NodeInfo + PartialEq + Sized { type ConcreteNode: LayoutNode<'dom, ConcreteThreadSafeLayoutNode = Self>; type ConcreteElement: TElement; @@ -224,7 +224,7 @@ pub trait ThreadSafeLayoutNode<'dom>: .map_or(PseudoElementType::Normal, |el| el.get_pseudo_element_type()) } - fn get_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData>; + fn get_opaque_style_and_layout_data(self) -> Option<&'dom OpaqueStyleAndLayoutData>; fn style(&self, context: &SharedStyleContext) -> Arc<ComputedValues> { if let Some(el) = self.as_element() { @@ -314,7 +314,12 @@ pub trait DangerousThreadSafeLayoutNode<'dom>: ThreadSafeLayoutNode<'dom> { } pub trait ThreadSafeLayoutElement<'dom>: - Clone + Copy + Sized + Debug + ::selectors::Element<Impl = SelectorImpl> + GetLayoutData<'dom> + Clone + + Copy + + Sized + + Debug + + ::selectors::Element<Impl = SelectorImpl> + + GetOpaqueStyleAndLayoutData<'dom> { type ConcreteThreadSafeLayoutNode: ThreadSafeLayoutNode< 'dom, |