diff options
author | Glenn Watson <gw@intuitionlibrary.com> | 2014-07-14 13:40:53 +1000 |
---|---|---|
committer | Glenn Watson <gw@intuitionlibrary.com> | 2014-07-16 07:33:29 +1000 |
commit | dddd3346a68d4a29b3751fe1d9b38d196350acbd (patch) | |
tree | eb0a1647997c8b37bb3a58b629dafd51f25eaeaf /src/components/script/dom/element.rs | |
parent | d97ec6995773ee79fbde053520bc580e7b33d15d (diff) | |
download | servo-dddd3346a68d4a29b3751fe1d9b38d196350acbd.tar.gz servo-dddd3346a68d4a29b3751fe1d9b38d196350acbd.zip |
Convert element name to be stored as atom instead of string.
Diffstat (limited to 'src/components/script/dom/element.rs')
-rw-r--r-- | src/components/script/dom/element.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index a16c36f4708..05a13b3a8d9 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -32,6 +32,7 @@ use style; use servo_util::namespace; use servo_util::namespace::{Namespace, Null}; use servo_util::str::{DOMString, null_str_as_empty_ref, split_html_space_chars}; +use servo_util::atom::Atom; use std::ascii::StrAsciiExt; use std::cell::{Cell, RefCell}; @@ -40,7 +41,7 @@ use std::mem; #[deriving(Encodable)] pub struct Element { pub node: Node, - pub local_name: DOMString, // TODO: This should be an atom, not a DOMString. + pub local_name: Atom, pub namespace: Namespace, pub prefix: Option<DOMString>, pub attrs: RefCell<Vec<JS<Attr>>>, @@ -145,7 +146,7 @@ impl Element { pub fn new_inherited(type_id: ElementTypeId, local_name: DOMString, namespace: Namespace, prefix: Option<DOMString>, document: &JSRef<Document>) -> Element { Element { node: Node::new_inherited(ElementNodeTypeId(type_id), document), - local_name: local_name, + local_name: Atom::from_slice(local_name.as_slice()), namespace: namespace, prefix: prefix, attrs: RefCell::new(vec!()), @@ -460,7 +461,7 @@ impl<'a> ElementMethods for JSRef<'a, Element> { } fn LocalName(&self) -> DOMString { - self.local_name.clone() + self.local_name.as_slice().to_string() } // http://dom.spec.whatwg.org/#dom-element-prefix |