From 8dc5fe0fe5b8e7f1b6485b0836461b7c2a695ff4 Mon Sep 17 00:00:00 2001 From: Tetsuharu OHZEKI Date: Thu, 2 Jan 2014 23:47:50 +0900 Subject: [PATCH] Split up the utility function to make internal attribute's namespace. --- src/components/script/dom/element.rs | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index 9f9e09c9597..e2746440c5f 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -171,14 +171,7 @@ impl Element { namespace: Namespace, name: DOMString, value: DOMString) -> ErrorResult { - //FIXME: Throw for XML-invalid names - //FIXME: Throw for XMLNS-invalid names - let (prefix, local_name) = if name.contains(":") { - let parts: ~[&str] = name.splitn(':', 1).collect(); - (Some(parts[0].to_owned()), parts[1].to_owned()) - } else { - (None, name.clone()) - }; + let (prefix, local_name) = get_attribute_parts(name.clone()); match prefix { Some(ref prefix_str) => { if (namespace == namespace::Null || @@ -488,3 +481,17 @@ impl Element { Ok(None) } } + + +fn get_attribute_parts(name: DOMString) -> (Option<~str>, ~str) { + //FIXME: Throw for XML-invalid names + //FIXME: Throw for XMLNS-invalid names + let (prefix, local_name) = if name.contains(":") { + let parts: ~[&str] = name.splitn(':', 1).collect(); + (Some(parts[0].to_owned()), parts[1].to_owned()) + } else { + (None, name) + }; + + (prefix, local_name) +}