diff options
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 |