aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/element.rs
diff options
context:
space:
mode:
authorbors-servo <servo-ops@mozilla.com>2020-03-31 10:51:18 -0400
committerGitHub <noreply@github.com>2020-03-31 10:51:18 -0400
commit3aa15e3fa30194e465c8bbb21c07d5239a6ac9f8 (patch)
treebd64feee4c1f3d5861f5714b032dd3a52fd2aa70 /components/script/dom/element.rs
parent09271826f6a771cace1755dd18794d7085fccbd3 (diff)
parentfb1ff3f097c0c8a994c9e7c4bb72c3ba5b64492d (diff)
downloadservo-3aa15e3fa30194e465c8bbb21c07d5239a6ac9f8.tar.gz
servo-3aa15e3fa30194e465c8bbb21c07d5239a6ac9f8.zip
Auto merge of #26070 - servo:layout-2020-more-cleanups, r=SimonSapin
Make LayoutNodeHelpers::text_content return a cow What does it mean? It means that layout can process `Text` nodes' contents by just borrowing them, potentially saving us from a lot of unnecessary tempoorary allocations, which is nice.
Diffstat (limited to 'components/script/dom/element.rs')
-rw-r--r--components/script/dom/element.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs
index 602cb148d7a..7d167bf2574 100644
--- a/components/script/dom/element.rs
+++ b/components/script/dom/element.rs
@@ -578,7 +578,7 @@ pub unsafe fn get_attr_for_layout<'dom>(
.iter()
.find(|attr| {
let attr = attr.to_layout();
- *name == attr.local_name_atom() && (*attr.unsafe_get()).namespace() == namespace
+ name == attr.local_name() && namespace == attr.namespace()
})
.map(|attr| attr.to_layout())
}
@@ -600,7 +600,7 @@ impl RawLayoutElementHelpers for Element {
namespace: &Namespace,
name: &LocalName,
) -> Option<&'a str> {
- get_attr_for_layout(self, namespace, name).map(|attr| attr.value_ref_forever())
+ get_attr_for_layout(self, namespace, name).map(|attr| attr.as_str())
}
#[inline]
@@ -610,7 +610,7 @@ impl RawLayoutElementHelpers for Element {
.iter()
.filter_map(|attr| {
let attr = attr.to_layout();
- if *name == attr.local_name_atom() {
+ if name == attr.local_name() {
Some(attr.value())
} else {
None
@@ -656,7 +656,7 @@ impl<'dom> LayoutElementHelpers<'dom> for LayoutDom<'dom, Element> {
get_attr_for_layout(&*self.unsafe_get(), &ns!(), &local_name!("class")).map_or(
false,
|attr| {
- attr.value_tokens()
+ attr.as_tokens()
.unwrap()
.iter()
.any(|atom| case_sensitivity.eq_atom(atom, name))
@@ -668,7 +668,7 @@ impl<'dom> LayoutElementHelpers<'dom> for LayoutDom<'dom, Element> {
#[inline]
unsafe fn get_classes_for_layout(self) -> Option<&'dom [Atom]> {
get_attr_for_layout(&*self.unsafe_get(), &ns!(), &local_name!("class"))
- .map(|attr| attr.value_tokens().unwrap())
+ .map(|attr| attr.as_tokens().unwrap())
}
#[allow(unsafe_code)]