Remove doublepointer in VirtualMethods, and from_borrowed_ref

Most of the heavy lifting done by:

```
$ ls *rs | xargs gawk -i inplace '/let .*: &&.*from_borrowed_ref/{sub("&&", "\\&");sub("_borrowed_","_");} {print $0}'
$ ls *rs | xargs gawk -i inplace "/impl.*VirtualMethods/{in_vm=1; sub(/<'a>/,\"\");sub(/&'a /,\"\")} /^}\$/{in_vm=0;} in_vm{\$0=gensub(/\\*self([^.])/,\"self\\\1\",\"g\"); sub(/from_borrowed_ref/,\"from_ref\")} {print}"
```
This commit is contained in:
Manish Goregaokar 2015-08-27 01:07:34 +05:30
parent 5e83a3f0a3
commit b33c5427bc
34 changed files with 159 additions and 164 deletions

View file

@ -101,9 +101,9 @@ fn is_favicon(value: &Option<String>) -> bool {
}
}
impl<'a> VirtualMethods for &'a HTMLLinkElement {
impl VirtualMethods for HTMLLinkElement {
fn super_type<'b>(&'b self) -> Option<&'b VirtualMethods> {
let htmlelement: &&HTMLElement = HTMLElementCast::from_borrowed_ref(self);
let htmlelement: &HTMLElement = HTMLElementCast::from_ref(self);
Some(htmlelement as &VirtualMethods)
}
@ -112,12 +112,12 @@ impl<'a> VirtualMethods for &'a HTMLLinkElement {
s.after_set_attr(attr);
}
let node = NodeCast::from_ref(*self);
let node = NodeCast::from_ref(self);
if !node.is_in_doc() {
return;
}
let element = ElementCast::from_ref(*self);
let element = ElementCast::from_ref(self);
let rel = get_attr(element, &atom!("rel"));
match (rel, attr.local_name()) {
@ -150,7 +150,7 @@ impl<'a> VirtualMethods for &'a HTMLLinkElement {
}
if tree_in_doc {
let element = ElementCast::from_ref(*self);
let element = ElementCast::from_ref(self);
let rel = get_attr(element, &atom!("rel"));
let href = get_attr(element, &atom!("href"));