aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/script/dom/element.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/script/dom/element.rs')
-rw-r--r--src/components/script/dom/element.rs42
1 files changed, 21 insertions, 21 deletions
diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs
index 2ee655f6156..751251584a7 100644
--- a/src/components/script/dom/element.rs
+++ b/src/components/script/dom/element.rs
@@ -228,11 +228,11 @@ pub trait AttributeHandlers {
impl<'a> AttributeHandlers for JSRef<'a, Element> {
fn get_attribute(&self, namespace: Namespace, name: &str) -> Option<Temporary<Attr>> {
if self.html_element_in_html_document() {
- self.get().attrs.iter().map(|attr| attr.root()).find(|attr| {
+ self.deref().attrs.iter().map(|attr| attr.root()).find(|attr| {
name.to_ascii_lower() == attr.local_name && attr.namespace == namespace
}).map(|x| Temporary::from_rooted(&*x))
} else {
- self.get().attrs.iter().map(|attr| attr.root()).find(|attr| {
+ self.deref().attrs.iter().map(|attr| attr.root()).find(|attr| {
name == attr.local_name && attr.namespace == namespace
}).map(|x| Temporary::from_rooted(&*x))
}
@@ -262,9 +262,9 @@ impl<'a> AttributeHandlers for JSRef<'a, Element> {
let position: |&JSRef<Attr>| -> bool =
if self.html_element_in_html_document() {
- |attr| attr.get().local_name.eq_ignore_ascii_case(local_name)
+ |attr| attr.deref().local_name.eq_ignore_ascii_case(local_name)
} else {
- |attr| attr.get().local_name == local_name
+ |attr| attr.deref().local_name == local_name
};
self.do_set_attribute(name.clone(), value, name.clone(), namespace::Null, None, position);
Ok(())
@@ -273,27 +273,27 @@ impl<'a> AttributeHandlers for JSRef<'a, Element> {
fn do_set_attribute(&mut self, local_name: DOMString, value: DOMString,
name: DOMString, namespace: Namespace,
prefix: Option<DOMString>, cb: |&JSRef<Attr>| -> bool) {
- let idx = self.get().attrs.iter()
- .map(|attr| attr.root())
- .position(|attr| cb(&*attr));
+ let idx = self.deref().attrs.iter()
+ .map(|attr| attr.root())
+ .position(|attr| cb(&*attr));
let (idx, set_type) = match idx {
Some(idx) => (idx, ReplacedAttr),
None => {
let window = window_from_node(self).root();
let attr = Attr::new(&*window, local_name.clone(), value.clone(),
name, namespace.clone(), prefix, self);
- self.get_mut().attrs.push_unrooted(&attr);
- (self.get().attrs.len() - 1, FirstSetAttr)
+ self.deref_mut().attrs.push_unrooted(&attr);
+ (self.deref().attrs.len() - 1, FirstSetAttr)
}
};
- self.get_mut().attrs.get(idx).root().set_value(set_type, value);
+ self.deref_mut().attrs.get(idx).root().set_value(set_type, value);
}
fn remove_attribute(&mut self, namespace: Namespace, name: DOMString) -> ErrorResult {
let (_, local_name) = get_attribute_parts(name.clone());
- let idx = self.get().attrs.iter().map(|attr| attr.root()).position(|attr| {
+ let idx = self.deref().attrs.iter().map(|attr| attr.root()).position(|attr| {
attr.local_name == local_name
});
@@ -306,12 +306,12 @@ impl<'a> AttributeHandlers for JSRef<'a, Element> {
}
if namespace == namespace::Null {
- let removed_raw_value = self.get().attrs.get(idx).root().Value();
+ let removed_raw_value = self.deref().attrs.get(idx).root().Value();
vtable_for(NodeCast::from_mut_ref(self))
.before_remove_attr(local_name.clone(), removed_raw_value);
}
- self.get_mut().attrs.remove(idx);
+ self.deref_mut().attrs.remove(idx);
}
};
@@ -516,7 +516,7 @@ impl<'a> ElementMethods for JSRef<'a, Element> {
// Step 3-5.
self.do_set_attribute(name.clone(), value, name.clone(), namespace::Null, None, |attr| {
- attr.get().name == name
+ attr.deref().name == name
});
Ok(())
}
@@ -577,8 +577,8 @@ impl<'a> ElementMethods for JSRef<'a, Element> {
// Step 9.
self.do_set_attribute(local_name.clone(), value, name, namespace.clone(), prefix, |attr| {
- attr.get().local_name == local_name &&
- attr.get().namespace == namespace
+ attr.deref().local_name == local_name &&
+ attr.deref().namespace == namespace
});
Ok(())
}
@@ -694,9 +694,9 @@ pub fn get_attribute_parts(name: DOMString) -> (Option<~str>, ~str) {
}
impl<'a> VirtualMethods for JSRef<'a, Element> {
- fn super_type(&self) -> Option<~VirtualMethods:> {
- let node: &JSRef<Node> = NodeCast::from_ref(self);
- Some(~node.clone() as ~VirtualMethods:)
+ fn super_type<'a>(&'a mut self) -> Option<&'a mut VirtualMethods:> {
+ let node: &mut JSRef<Node> = NodeCast::from_mut_ref(self);
+ Some(node as &mut VirtualMethods:)
}
fn after_set_attr(&mut self, name: DOMString, value: DOMString) {
@@ -709,7 +709,7 @@ impl<'a> VirtualMethods for JSRef<'a, Element> {
"style" => {
let doc = document_from_node(self).root();
let base_url = doc.deref().url().clone();
- self.get_mut().style_attribute = Some(style::parse_style_attribute(value, &base_url))
+ self.deref_mut().style_attribute = Some(style::parse_style_attribute(value, &base_url))
}
"id" => {
let node: &JSRef<Node> = NodeCast::from_ref(self);
@@ -732,7 +732,7 @@ impl<'a> VirtualMethods for JSRef<'a, Element> {
match name.as_slice() {
"style" => {
- self.get_mut().style_attribute = None
+ self.deref_mut().style_attribute = None
}
"id" => {
let node: &JSRef<Node> = NodeCast::from_ref(self);