From ee2ccc4f872ba33a86057d87a99d1015b3c41cf1 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Fri, 12 Sep 2014 13:28:37 -0700 Subject: script: Use atom comparison in more places, especially for attributes. 75% improvement in style recalc for Guardians of the Galaxy. --- components/script/dom/htmlscriptelement.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'components/script/dom/htmlscriptelement.rs') diff --git a/components/script/dom/htmlscriptelement.rs b/components/script/dom/htmlscriptelement.rs index 138c7ea8679..e4c268d5713 100644 --- a/components/script/dom/htmlscriptelement.rs +++ b/components/script/dom/htmlscriptelement.rs @@ -75,7 +75,7 @@ static SCRIPT_JS_MIMES: StaticStringVec = &[ impl<'a> HTMLScriptElementHelpers for JSRef<'a, HTMLScriptElement> { fn is_javascript(self) -> bool { let element: JSRef = ElementCast::from_ref(self); - match element.get_attribute(ns!(""), "type").root().map(|s| s.Value()) { + match element.get_attribute(ns!(""), &atom!("type")).root().map(|s| s.Value()) { Some(ref s) if s.is_empty() => { // type attr exists, but empty means js debug!("script type empty, inferring js"); @@ -87,7 +87,9 @@ impl<'a> HTMLScriptElementHelpers for JSRef<'a, HTMLScriptElement> { }, None => { debug!("no script type"); - match element.get_attribute(ns!(""), "language").root().map(|s| s.Value()) { + match element.get_attribute(ns!(""), &atom!("language")) + .root() + .map(|s| s.Value()) { Some(ref s) if s.is_empty() => { debug!("script language empty, inferring js"); true @@ -109,7 +111,7 @@ impl<'a> HTMLScriptElementHelpers for JSRef<'a, HTMLScriptElement> { impl<'a> HTMLScriptElementMethods for JSRef<'a, HTMLScriptElement> { fn Src(self) -> DOMString { let element: JSRef = ElementCast::from_ref(self); - element.get_url_attribute("src") + element.get_url_attribute(&atom!("src")) } // http://www.whatwg.org/html/#dom-script-text -- cgit v1.2.3