aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/script
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/script')
-rw-r--r--src/components/script/dom/attr.rs10
-rw-r--r--src/components/script/dom/attrlist.rs7
-rw-r--r--src/components/script/dom/bindings/codegen/CodegenRust.py4
-rw-r--r--src/components/script/dom/canvasrenderingcontext2d.rs7
-rw-r--r--src/components/script/dom/characterdata.rs13
-rw-r--r--src/components/script/dom/clientrect.rs10
-rw-r--r--src/components/script/dom/clientrectlist.rs7
-rw-r--r--src/components/script/dom/comment.rs4
-rw-r--r--src/components/script/dom/console.rs10
-rw-r--r--src/components/script/dom/customevent.rs11
-rw-r--r--src/components/script/dom/document.rs53
-rw-r--r--src/components/script/dom/documentfragment.rs11
-rw-r--r--src/components/script/dom/documenttype.rs10
-rw-r--r--src/components/script/dom/domexception.rs7
-rw-r--r--src/components/script/dom/domimplementation.rs14
-rw-r--r--src/components/script/dom/domparser.rs6
-rw-r--r--src/components/script/dom/domtokenlist.rs7
-rw-r--r--src/components/script/dom/element.rs37
-rw-r--r--src/components/script/dom/event.rs18
-rw-r--r--src/components/script/dom/eventdispatcher.rs3
-rw-r--r--src/components/script/dom/eventtarget.rs13
-rw-r--r--src/components/script/dom/file.rs5
-rw-r--r--src/components/script/dom/formdata.rs11
-rw-r--r--src/components/script/dom/htmlanchorelement.rs8
-rw-r--r--src/components/script/dom/htmlappletelement.rs3
-rw-r--r--src/components/script/dom/htmlareaelement.rs3
-rw-r--r--src/components/script/dom/htmlaudioelement.rs3
-rw-r--r--src/components/script/dom/htmlbaseelement.rs3
-rw-r--r--src/components/script/dom/htmlbodyelement.rs8
-rw-r--r--src/components/script/dom/htmlbrelement.rs3
-rw-r--r--src/components/script/dom/htmlbuttonelement.rs5
-rw-r--r--src/components/script/dom/htmlcanvaselement.rs9
-rw-r--r--src/components/script/dom/htmlcollection.rs11
-rw-r--r--src/components/script/dom/htmldataelement.rs3
-rw-r--r--src/components/script/dom/htmldatalistelement.rs5
-rw-r--r--src/components/script/dom/htmldirectoryelement.rs3
-rw-r--r--src/components/script/dom/htmldivelement.rs3
-rw-r--r--src/components/script/dom/htmldlistelement.rs3
-rw-r--r--src/components/script/dom/htmlelement.rs10
-rw-r--r--src/components/script/dom/htmlembedelement.rs3
-rw-r--r--src/components/script/dom/htmlfieldsetelement.rs6
-rw-r--r--src/components/script/dom/htmlfontelement.rs3
-rw-r--r--src/components/script/dom/htmlformelement.rs3
-rw-r--r--src/components/script/dom/htmlframeelement.rs3
-rw-r--r--src/components/script/dom/htmlframesetelement.rs3
-rw-r--r--src/components/script/dom/htmlheadelement.rs3
-rw-r--r--src/components/script/dom/htmlheadingelement.rs3
-rw-r--r--src/components/script/dom/htmlhrelement.rs3
-rw-r--r--src/components/script/dom/htmlhtmlelement.rs3
-rw-r--r--src/components/script/dom/htmliframeelement.rs9
-rw-r--r--src/components/script/dom/htmlimageelement.rs28
-rw-r--r--src/components/script/dom/htmlinputelement.rs3
-rw-r--r--src/components/script/dom/htmllabelelement.rs3
-rw-r--r--src/components/script/dom/htmllegendelement.rs3
-rw-r--r--src/components/script/dom/htmllielement.rs3
-rw-r--r--src/components/script/dom/htmllinkelement.rs3
-rw-r--r--src/components/script/dom/htmlmapelement.rs3
-rw-r--r--src/components/script/dom/htmlmediaelement.rs3
-rw-r--r--src/components/script/dom/htmlmetaelement.rs3
-rw-r--r--src/components/script/dom/htmlmeterelement.rs3
-rw-r--r--src/components/script/dom/htmlmodelement.rs3
-rw-r--r--src/components/script/dom/htmlobjectelement.rs7
-rw-r--r--src/components/script/dom/htmlolistelement.rs3
-rw-r--r--src/components/script/dom/htmloptgroupelement.rs3
-rw-r--r--src/components/script/dom/htmloptionelement.rs3
-rw-r--r--src/components/script/dom/htmloutputelement.rs5
-rw-r--r--src/components/script/dom/htmlparagraphelement.rs3
-rw-r--r--src/components/script/dom/htmlparamelement.rs3
-rw-r--r--src/components/script/dom/htmlpreelement.rs3
-rw-r--r--src/components/script/dom/htmlprogresselement.rs3
-rw-r--r--src/components/script/dom/htmlquoteelement.rs3
-rw-r--r--src/components/script/dom/htmlscriptelement.rs5
-rw-r--r--src/components/script/dom/htmlselectelement.rs6
-rw-r--r--src/components/script/dom/htmlsourceelement.rs3
-rw-r--r--src/components/script/dom/htmlspanelement.rs3
-rw-r--r--src/components/script/dom/htmlstyleelement.rs6
-rw-r--r--src/components/script/dom/htmltablecaptionelement.rs3
-rw-r--r--src/components/script/dom/htmltablecellelement.rs3
-rw-r--r--src/components/script/dom/htmltablecolelement.rs3
-rw-r--r--src/components/script/dom/htmltabledatacellelement.rs3
-rw-r--r--src/components/script/dom/htmltableelement.rs3
-rw-r--r--src/components/script/dom/htmltableheadercellelement.rs3
-rw-r--r--src/components/script/dom/htmltablerowelement.rs3
-rw-r--r--src/components/script/dom/htmltablesectionelement.rs3
-rw-r--r--src/components/script/dom/htmltemplateelement.rs3
-rw-r--r--src/components/script/dom/htmltextareaelement.rs3
-rw-r--r--src/components/script/dom/htmltimeelement.rs3
-rw-r--r--src/components/script/dom/htmltitleelement.rs3
-rw-r--r--src/components/script/dom/htmltrackelement.rs3
-rw-r--r--src/components/script/dom/htmlulistelement.rs3
-rw-r--r--src/components/script/dom/htmlunknownelement.rs3
-rw-r--r--src/components/script/dom/htmlvideoelement.rs3
-rw-r--r--src/components/script/dom/location.rs7
-rw-r--r--src/components/script/dom/messageevent.rs10
-rw-r--r--src/components/script/dom/mouseevent.rs33
-rw-r--r--src/components/script/dom/navigator.rs9
-rw-r--r--src/components/script/dom/node.rs48
-rw-r--r--src/components/script/dom/nodelist.rs7
-rw-r--r--src/components/script/dom/performance.rs6
-rw-r--r--src/components/script/dom/performancetiming.rs5
-rw-r--r--src/components/script/dom/processinginstruction.rs5
-rw-r--r--src/components/script/dom/progressevent.rs10
-rw-r--r--src/components/script/dom/screen.rs6
-rw-r--r--src/components/script/dom/testbinding.rs42
-rw-r--r--src/components/script/dom/text.rs5
-rw-r--r--src/components/script/dom/uievent.rs15
-rw-r--r--src/components/script/dom/urlsearchparams.rs16
-rw-r--r--src/components/script/dom/validitystate.rs3
-rw-r--r--src/components/script/dom/window.rs28
-rw-r--r--src/components/script/dom/worker.rs5
-rw-r--r--src/components/script/dom/workerglobalscope.rs6
-rw-r--r--src/components/script/dom/xmlhttprequest.rs28
-rw-r--r--src/components/script/dom/xmlhttprequesteventtarget.rs18
-rw-r--r--src/components/script/dom/xmlhttprequestupload.rs3
-rw-r--r--src/components/script/html/hubbub_html_parser.rs5
-rw-r--r--src/components/script/page.rs3
116 files changed, 126 insertions, 765 deletions
diff --git a/src/components/script/dom/attr.rs b/src/components/script/dom/attr.rs
index 6499ce6d4a7..2762910171f 100644
--- a/src/components/script/dom/attr.rs
+++ b/src/components/script/dom/attr.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::AttrBinding;
+use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods;
use dom::bindings::codegen::InheritTypes::NodeCast;
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary};
@@ -125,15 +126,6 @@ impl Attr {
}
}
-pub trait AttrMethods {
- fn LocalName(&self) -> DOMString;
- fn Value(&self) -> DOMString;
- fn SetValue(&self, value: DOMString);
- fn Name(&self) -> DOMString;
- fn GetNamespaceURI(&self) -> Option<DOMString>;
- fn GetPrefix(&self) -> Option<DOMString>;
-}
-
impl<'a> AttrMethods for JSRef<'a, Attr> {
fn LocalName(&self) -> DOMString {
self.local_name.clone()
diff --git a/src/components/script/dom/attrlist.rs b/src/components/script/dom/attrlist.rs
index 8f4c309ab54..e4812b756c2 100644
--- a/src/components/script/dom/attrlist.rs
+++ b/src/components/script/dom/attrlist.rs
@@ -4,6 +4,7 @@
use dom::attr::Attr;
use dom::bindings::codegen::Bindings::AttrListBinding;
+use dom::bindings::codegen::Bindings::AttrListBinding::AttrListMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -30,12 +31,6 @@ impl AttrList {
}
}
-pub trait AttrListMethods {
- fn Length(&self) -> u32;
- fn Item(&self, index: u32) -> Option<Temporary<Attr>>;
- fn IndexedGetter(&self, index: u32, found: &mut bool) -> Option<Temporary<Attr>>;
-}
-
impl<'a> AttrListMethods for JSRef<'a, AttrList> {
fn Length(&self) -> u32 {
self.owner.root().attrs.borrow().len() as u32
diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py
index 3b94eb3ca36..52a68953955 100644
--- a/src/components/script/dom/bindings/codegen/CodegenRust.py
+++ b/src/components/script/dom/bindings/codegen/CodegenRust.py
@@ -1341,10 +1341,6 @@ class CGImports(CGWrapper):
'dead_code',
]
- for d in descriptors:
- name = d.interface.identifier.name
- imports.append('dom::%s::%sMethods' % (name.lower(), name))
-
statements = ['#![allow(%s)]' % ','.join(ignored_warnings)]
statements.extend('use %s;' % i for i in sorted(imports))
diff --git a/src/components/script/dom/canvasrenderingcontext2d.rs b/src/components/script/dom/canvasrenderingcontext2d.rs
index 42cfd21472b..6774e042791 100644
--- a/src/components/script/dom/canvasrenderingcontext2d.rs
+++ b/src/components/script/dom/canvasrenderingcontext2d.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding;
+use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding::CanvasRenderingContext2DMethods;
use dom::bindings::global::{GlobalRef, GlobalField};
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::trace::Untraceable;
@@ -110,12 +111,6 @@ impl CanvasRenderingContext2D {
}
}
-pub trait CanvasRenderingContext2DMethods {
- fn FillRect(&self, x: f64, y: f64, width: f64, height: f64);
- fn ClearRect(&self, x: f64, y: f64, width: f64, height: f64);
- fn StrokeRect(&self, x: f64, y: f64, width: f64, height: f64);
-}
-
impl<'a> CanvasRenderingContext2DMethods for JSRef<'a, CanvasRenderingContext2D> {
fn FillRect(&self, x: f64, y: f64, width: f64, height: f64) {
let rect = Rect(Point2D(x as f32, y as f32), Size2D(width as f32, height as f32));
diff --git a/src/components/script/dom/characterdata.rs b/src/components/script/dom/characterdata.rs
index 8e2d94081f8..ebb17cf6993 100644
--- a/src/components/script/dom/characterdata.rs
+++ b/src/components/script/dom/characterdata.rs
@@ -4,6 +4,7 @@
//! DOM bindings for `CharacterData`.
+use dom::bindings::codegen::Bindings::CharacterDataBinding::CharacterDataMethods;
use dom::bindings::codegen::InheritTypes::{CharacterDataDerived, NodeCast};
use dom::bindings::error::{Fallible, ErrorResult, IndexSize};
use dom::bindings::js::JSRef;
@@ -42,18 +43,6 @@ impl CharacterData {
}
}
-pub trait CharacterDataMethods {
- fn Data(&self) -> DOMString;
- fn SetData(&self, arg: DOMString) -> ErrorResult;
- fn Length(&self) -> u32;
- fn SubstringData(&self, offset: u32, count: u32) -> Fallible<DOMString>;
- fn AppendData(&self, arg: DOMString) -> ErrorResult;
- fn InsertData(&self, _offset: u32, _arg: DOMString) -> ErrorResult;
- fn DeleteData(&self, _offset: u32, _count: u32) -> ErrorResult;
- fn ReplaceData(&self, _offset: u32, _count: u32, _arg: DOMString) -> ErrorResult;
- fn Remove(&self);
-}
-
impl<'a> CharacterDataMethods for JSRef<'a, CharacterData> {
fn Data(&self) -> DOMString {
self.data.deref().borrow().clone()
diff --git a/src/components/script/dom/clientrect.rs b/src/components/script/dom/clientrect.rs
index cf6eaee67fc..b80d6a8853b 100644
--- a/src/components/script/dom/clientrect.rs
+++ b/src/components/script/dom/clientrect.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::ClientRectBinding;
+use dom::bindings::codegen::Bindings::ClientRectBinding::ClientRectMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -41,15 +42,6 @@ impl ClientRect {
}
}
-pub trait ClientRectMethods {
- fn Top(&self) -> f32;
- fn Bottom(&self) -> f32;
- fn Left(&self) -> f32;
- fn Right(&self) -> f32;
- fn Width(&self) -> f32;
- fn Height(&self) -> f32;
-}
-
impl<'a> ClientRectMethods for JSRef<'a, ClientRect> {
fn Top(&self) -> f32 {
self.top
diff --git a/src/components/script/dom/clientrectlist.rs b/src/components/script/dom/clientrectlist.rs
index ded917213d8..86e7d3bd309 100644
--- a/src/components/script/dom/clientrectlist.rs
+++ b/src/components/script/dom/clientrectlist.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::ClientRectListBinding;
+use dom::bindings::codegen::Bindings::ClientRectListBinding::ClientRectListMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -34,12 +35,6 @@ impl ClientRectList {
}
}
-pub trait ClientRectListMethods {
- fn Length(&self) -> u32;
- fn Item(&self, index: u32) -> Option<Temporary<ClientRect>>;
- fn IndexedGetter(&self, index: u32, found: &mut bool) -> Option<Temporary<ClientRect>>;
-}
-
impl<'a> ClientRectListMethods for JSRef<'a, ClientRectList> {
fn Length(&self) -> u32 {
self.rects.len() as u32
diff --git a/src/components/script/dom/comment.rs b/src/components/script/dom/comment.rs
index fe200cf9d48..e50b24b2a58 100644
--- a/src/components/script/dom/comment.rs
+++ b/src/components/script/dom/comment.rs
@@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use dom::bindings::codegen::InheritTypes::CommentDerived;
use dom::bindings::codegen::Bindings::CommentBinding;
+use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
+use dom::bindings::codegen::InheritTypes::CommentDerived;
use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary};
@@ -12,7 +13,6 @@ use dom::characterdata::CharacterData;
use dom::document::Document;
use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::node::{CommentNodeTypeId, Node};
-use dom::window::WindowMethods;
use servo_util::str::DOMString;
/// An HTML comment.
diff --git a/src/components/script/dom/console.rs b/src/components/script/dom/console.rs
index 341ab20f8be..3e74617ebcf 100644
--- a/src/components/script/dom/console.rs
+++ b/src/components/script/dom/console.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::ConsoleBinding;
+use dom::bindings::codegen::Bindings::ConsoleBinding::ConsoleMethods;
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -25,15 +26,6 @@ impl Console {
}
}
-pub trait ConsoleMethods {
- fn Log(&self, message: DOMString);
- fn Debug(&self, message: DOMString);
- fn Info(&self, message: DOMString);
- fn Warn(&self, message: DOMString);
- fn Error(&self, message: DOMString);
- fn Assert(&self, condition: bool, message: Option<DOMString>);
-}
-
impl<'a> ConsoleMethods for JSRef<'a, Console> {
fn Log(&self, message: DOMString) {
println!("{:s}", message);
diff --git a/src/components/script/dom/customevent.rs b/src/components/script/dom/customevent.rs
index 5485391ec0c..159601783ac 100644
--- a/src/components/script/dom/customevent.rs
+++ b/src/components/script/dom/customevent.rs
@@ -3,13 +3,15 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::CustomEventBinding;
+use dom::bindings::codegen::Bindings::CustomEventBinding::CustomEventMethods;
+use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
use dom::bindings::codegen::InheritTypes::{EventCast, CustomEventDerived};
use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::trace::Traceable;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
-use dom::event::{Event, EventMethods, EventTypeId, CustomEventTypeId};
+use dom::event::{Event, EventTypeId, CustomEventTypeId};
use js::jsapi::JSContext;
use js::jsval::{JSVal, NullValue};
use servo_util::str::DOMString;
@@ -28,13 +30,6 @@ impl CustomEventDerived for Event {
}
}
-pub trait CustomEventMethods {
- fn Detail(&self, _cx: *mut JSContext) -> JSVal;
- fn InitCustomEvent(&self, _cx: *mut JSContext,
- type_: DOMString, can_bubble: bool,
- cancelable: bool, detail: JSVal);
-}
-
impl CustomEvent {
pub fn new_inherited(type_id: EventTypeId) -> CustomEvent {
CustomEvent {
diff --git a/src/components/script/dom/document.rs b/src/components/script/dom/document.rs
index aac4e463df4..58fef0e527f 100644
--- a/src/components/script/dom/document.rs
+++ b/src/components/script/dom/document.rs
@@ -3,7 +3,10 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::DocumentBinding;
+use dom::bindings::codegen::Bindings::DocumentBinding::DocumentMethods;
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
+use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods;
+use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
use dom::bindings::codegen::InheritTypes::{DocumentDerived, EventCast, HTMLElementCast};
use dom::bindings::codegen::InheritTypes::{HTMLHeadElementCast, TextCast, ElementCast};
use dom::bindings::codegen::InheritTypes::{DocumentTypeCast, HTMLHtmlElementCast, NodeCast};
@@ -32,13 +35,13 @@ use dom::htmlheadelement::HTMLHeadElement;
use dom::htmlhtmlelement::HTMLHtmlElement;
use dom::htmltitleelement::HTMLTitleElement;
use dom::mouseevent::MouseEvent;
-use dom::node::{Node, ElementNodeTypeId, DocumentNodeTypeId, NodeHelpers, NodeMethods};
+use dom::node::{Node, ElementNodeTypeId, DocumentNodeTypeId, NodeHelpers};
use dom::node::{CloneChildren, DoNotCloneChildren};
use dom::nodelist::NodeList;
use dom::text::Text;
use dom::processinginstruction::ProcessingInstruction;
use dom::uievent::UIEvent;
-use dom::window::{Window, WindowMethods, WindowHelpers};
+use dom::window::{Window, WindowHelpers};
use dom::location::Location;
use html::hubbub_html_parser::build_element_from_tag;
use hubbub::hubbub::{QuirksMode, NoQuirks, LimitedQuirks, FullQuirks};
@@ -280,52 +283,6 @@ impl<'a> PrivateDocumentHelpers for JSRef<'a, Document> {
}
}
-pub trait DocumentMethods {
- fn Implementation(&self) -> Temporary<DOMImplementation>;
- fn URL(&self) -> DOMString;
- fn DocumentURI(&self) -> DOMString;
- fn CompatMode(&self) -> DOMString;
- fn CharacterSet(&self) -> DOMString;
- fn ContentType(&self) -> DOMString;
- fn GetDoctype(&self) -> Option<Temporary<DocumentType>>;
- fn GetDocumentElement(&self) -> Option<Temporary<Element>>;
- fn GetElementsByTagName(&self, tag_name: DOMString) -> Temporary<HTMLCollection>;
- fn GetElementsByTagNameNS(&self, maybe_ns: Option<DOMString>, tag_name: DOMString) -> Temporary<HTMLCollection>;
- fn GetElementsByClassName(&self, classes: DOMString) -> Temporary<HTMLCollection>;
- fn GetElementById(&self, id: DOMString) -> Option<Temporary<Element>>;
- fn CreateElement(&self, local_name: DOMString) -> Fallible<Temporary<Element>>;
- fn CreateElementNS(&self, namespace: Option<DOMString>, qualified_name: DOMString) -> Fallible<Temporary<Element>>;
- fn CreateDocumentFragment(&self) -> Temporary<DocumentFragment>;
- fn CreateTextNode(&self, data: DOMString) -> Temporary<Text>;
- fn CreateComment(&self, data: DOMString) -> Temporary<Comment>;
- fn CreateProcessingInstruction(&self, target: DOMString, data: DOMString) -> Fallible<Temporary<ProcessingInstruction>>;
- fn ImportNode(&self, node: &JSRef<Node>, deep: bool) -> Fallible<Temporary<Node>>;
- fn AdoptNode(&self, node: &JSRef<Node>) -> Fallible<Temporary<Node>>;
- fn CreateEvent(&self, interface: DOMString) -> Fallible<Temporary<Event>>;
- fn Title(&self) -> DOMString;
- fn SetTitle(&self, title: DOMString) -> ErrorResult;
- fn GetHead(&self) -> Option<Temporary<HTMLHeadElement>>;
- fn GetBody(&self) -> Option<Temporary<HTMLElement>>;
- fn SetBody(&self, new_body: Option<JSRef<HTMLElement>>) -> ErrorResult;
- fn GetElementsByName(&self, name: DOMString) -> Temporary<NodeList>;
- fn Images(&self) -> Temporary<HTMLCollection>;
- fn Embeds(&self) -> Temporary<HTMLCollection>;
- fn Plugins(&self) -> Temporary<HTMLCollection>;
- fn Links(&self) -> Temporary<HTMLCollection>;
- fn Forms(&self) -> Temporary<HTMLCollection>;
- fn Scripts(&self) -> Temporary<HTMLCollection>;
- fn Anchors(&self) -> Temporary<HTMLCollection>;
- fn Applets(&self) -> Temporary<HTMLCollection>;
- fn Location(&self) -> Temporary<Location>;
- fn Children(&self) -> Temporary<HTMLCollection>;
- fn QuerySelector(&self, selectors: DOMString) -> Fallible<Option<Temporary<Element>>>;
- fn QuerySelectorAll(&self, selectors: DOMString) -> Fallible<Temporary<NodeList>>;
- fn GetOnclick(&self) -> Option<EventHandlerNonNull>;
- fn SetOnclick(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnload(&self) -> Option<EventHandlerNonNull>;
- fn SetOnload(&self, listener: Option<EventHandlerNonNull>);
-}
-
impl<'a> DocumentMethods for JSRef<'a, Document> {
// http://dom.spec.whatwg.org/#dom-document-implementation
fn Implementation(&self) -> Temporary<DOMImplementation> {
diff --git a/src/components/script/dom/documentfragment.rs b/src/components/script/dom/documentfragment.rs
index c840815f5ca..1f3fcb29424 100644
--- a/src/components/script/dom/documentfragment.rs
+++ b/src/components/script/dom/documentfragment.rs
@@ -2,8 +2,10 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use dom::bindings::codegen::InheritTypes::{DocumentFragmentDerived, NodeCast};
use dom::bindings::codegen::Bindings::DocumentFragmentBinding;
+use dom::bindings::codegen::Bindings::DocumentFragmentBinding::DocumentFragmentMethods;
+use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
+use dom::bindings::codegen::InheritTypes::{DocumentFragmentDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef;
@@ -14,7 +16,6 @@ use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::htmlcollection::HTMLCollection;
use dom::node::{DocumentFragmentNodeTypeId, Node, NodeHelpers, window_from_node};
use dom::nodelist::NodeList;
-use dom::window::WindowMethods;
use servo_util::str::DOMString;
#[deriving(Encodable)]
@@ -49,12 +50,6 @@ impl DocumentFragment {
}
}
-pub trait DocumentFragmentMethods {
- fn Children(&self) -> Temporary<HTMLCollection>;
- fn QuerySelector(&self, selectors: DOMString) -> Fallible<Option<Temporary<Element>>>;
- fn QuerySelectorAll(&self, selectors: DOMString) -> Fallible<Temporary<NodeList>>;
-}
-
impl<'a> DocumentFragmentMethods for JSRef<'a, DocumentFragment> {
// http://dom.spec.whatwg.org/#dom-parentnode-children
fn Children(&self) -> Temporary<HTMLCollection> {
diff --git a/src/components/script/dom/documenttype.rs b/src/components/script/dom/documenttype.rs
index 6097199b19a..5f101942139 100644
--- a/src/components/script/dom/documenttype.rs
+++ b/src/components/script/dom/documenttype.rs
@@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use dom::bindings::codegen::InheritTypes::{DocumentTypeDerived, NodeCast};
use dom::bindings::codegen::Bindings::DocumentTypeBinding;
+use dom::bindings::codegen::Bindings::DocumentTypeBinding::DocumentTypeMethods;
+use dom::bindings::codegen::InheritTypes::{DocumentTypeDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector};
use dom::document::Document;
@@ -53,13 +54,6 @@ impl DocumentType {
}
}
-pub trait DocumentTypeMethods {
- fn Name(&self) -> DOMString;
- fn PublicId(&self) -> DOMString;
- fn SystemId(&self) -> DOMString;
- fn Remove(&self);
-}
-
impl<'a> DocumentTypeMethods for JSRef<'a, DocumentType> {
fn Name(&self) -> DOMString {
self.name.clone()
diff --git a/src/components/script/dom/domexception.rs b/src/components/script/dom/domexception.rs
index e2b771742b5..2336c95e9a8 100644
--- a/src/components/script/dom/domexception.rs
+++ b/src/components/script/dom/domexception.rs
@@ -4,6 +4,7 @@
use dom::bindings::codegen::Bindings::DOMExceptionBinding;
use dom::bindings::codegen::Bindings::DOMExceptionBinding::DOMExceptionConstants;
+use dom::bindings::codegen::Bindings::DOMExceptionBinding::DOMExceptionMethods;
use dom::bindings::error;
use dom::bindings::error::Error;
use dom::bindings::global::GlobalRef;
@@ -87,12 +88,6 @@ impl Reflectable for DOMException {
}
}
-pub trait DOMExceptionMethods {
- fn Code(&self) -> u16;
- fn Name(&self) -> DOMString;
- fn Message(&self) -> DOMString;
-}
-
impl<'a> DOMExceptionMethods for JSRef<'a, DOMException> {
// http://dom.spec.whatwg.org/#dom-domexception-code
fn Code(&self) -> u16 {
diff --git a/src/components/script/dom/domimplementation.rs b/src/components/script/dom/domimplementation.rs
index 6603488e106..0dbb842ebe4 100644
--- a/src/components/script/dom/domimplementation.rs
+++ b/src/components/script/dom/domimplementation.rs
@@ -2,20 +2,23 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+use dom::bindings::codegen::Bindings::DocumentBinding::DocumentMethods;
use dom::bindings::codegen::Bindings::DOMImplementationBinding;
+use dom::bindings::codegen::Bindings::DOMImplementationBinding::DOMImplementationMethods;
+use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods;
use dom::bindings::codegen::InheritTypes::NodeCast;
use dom::bindings::error::{Fallible, InvalidCharacter, NamespaceError};
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Root, Temporary, OptionalRootable};
use dom::bindings::utils::{Reflector, Reflectable, reflect_dom_object};
use dom::bindings::utils::{QName, Name, InvalidXMLName, xml_name_type};
-use dom::document::{Document, HTMLDocument, NonHTMLDocument, DocumentMethods};
+use dom::document::{Document, HTMLDocument, NonHTMLDocument};
use dom::documenttype::DocumentType;
use dom::htmlbodyelement::HTMLBodyElement;
use dom::htmlheadelement::HTMLHeadElement;
use dom::htmlhtmlelement::HTMLHtmlElement;
use dom::htmltitleelement::HTMLTitleElement;
-use dom::node::{Node, NodeMethods};
+use dom::node::Node;
use dom::text::Text;
use servo_util::str::DOMString;
@@ -47,13 +50,6 @@ impl Reflectable for DOMImplementation {
}
}
-pub trait DOMImplementationMethods {
- fn CreateDocumentType(&self, qname: DOMString, pubid: DOMString, sysid: DOMString) -> Fallible<Temporary<DocumentType>>;
- fn CreateDocument(&self, namespace: Option<DOMString>, qname: DOMString,
- mut maybe_doctype: Option<JSRef<DocumentType>>) -> Fallible<Temporary<Document>>;
- fn CreateHTMLDocument(&self, title: Option<DOMString>) -> Temporary<Document>;
-}
-
// http://dom.spec.whatwg.org/#domimplementation
impl<'a> DOMImplementationMethods for JSRef<'a, DOMImplementation> {
// http://dom.spec.whatwg.org/#dom-domimplementation-createdocumenttype
diff --git a/src/components/script/dom/domparser.rs b/src/components/script/dom/domparser.rs
index 44f34bc5d75..65273cab756 100644
--- a/src/components/script/dom/domparser.rs
+++ b/src/components/script/dom/domparser.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::DOMParserBinding;
+use dom::bindings::codegen::Bindings::DOMParserBinding::DOMParserMethods;
use dom::bindings::codegen::Bindings::DOMParserBinding::SupportedTypeValues::{Text_html, Text_xml};
use dom::bindings::error::{Fallible, FailureUnknown};
use dom::bindings::global::{GlobalRef, Window};
@@ -36,11 +37,6 @@ impl DOMParser {
}
}
-pub trait DOMParserMethods {
- fn ParseFromString(&self, _s: DOMString, ty: DOMParserBinding::SupportedType)
- -> Fallible<Temporary<Document>>;
-}
-
impl<'a> DOMParserMethods for JSRef<'a, DOMParser> {
fn ParseFromString(&self,
_s: DOMString,
diff --git a/src/components/script/dom/domtokenlist.rs b/src/components/script/dom/domtokenlist.rs
index ebbbd73e3ba..cf44d5f7abc 100644
--- a/src/components/script/dom/domtokenlist.rs
+++ b/src/components/script/dom/domtokenlist.rs
@@ -4,6 +4,7 @@
use dom::attr::{Attr, TokenListAttrValue};
use dom::bindings::codegen::Bindings::DOMTokenListBinding;
+use dom::bindings::codegen::Bindings::DOMTokenListBinding::DOMTokenListMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary, OptionalRootable};
use dom::bindings::utils::{Reflector, Reflectable, reflect_dom_object};
@@ -55,12 +56,6 @@ impl<'a> PrivateDOMTokenListHelpers for JSRef<'a, DOMTokenList> {
}
}
-pub trait DOMTokenListMethods {
- fn Length(&self) -> u32;
- fn Item(&self, index: u32) -> Option<DOMString>;
- fn IndexedGetter(&self, index: u32, found: &mut bool) -> Option<DOMString>;
-}
-
// http://dom.spec.whatwg.org/#domtokenlist
impl<'a> DOMTokenListMethods for JSRef<'a, DOMTokenList> {
// http://dom.spec.whatwg.org/#dom-domtokenlist-length
diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs
index 5401bf31ef3..9301e61b20a 100644
--- a/src/components/script/dom/element.rs
+++ b/src/components/script/dom/element.rs
@@ -5,10 +5,12 @@
//! Element nodes.
use cssparser::tokenize;
-use dom::attr::{Attr, ReplacedAttr, FirstSetAttr, AttrMethods, AttrHelpersForLayout};
+use dom::attr::{Attr, ReplacedAttr, FirstSetAttr, AttrHelpersForLayout};
use dom::attr::{AttrValue, StringAttrValue, UIntAttrValue};
use dom::attrlist::AttrList;
+use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods;
use dom::bindings::codegen::Bindings::ElementBinding;
+use dom::bindings::codegen::Bindings::ElementBinding::ElementMethods;
use dom::bindings::codegen::InheritTypes::{ElementDerived, NodeCast};
use dom::bindings::js::{JS, JSRef, Temporary, TemporaryPushable};
use dom::bindings::js::{OptionalSettable, OptionalRootable, Root};
@@ -422,39 +424,6 @@ impl Element {
}
}
-pub trait ElementMethods {
- fn NamespaceURI(&self) -> DOMString;
- fn LocalName(&self) -> DOMString;
- fn GetPrefix(&self) -> Option<DOMString>;
- fn TagName(&self) -> DOMString;
- fn Id(&self) -> DOMString;
- fn SetId(&self, id: DOMString);
- fn ClassName(&self) -> DOMString;
- fn SetClassName(&self, class: DOMString);
- fn ClassList(&self) -> Temporary<DOMTokenList>;
- fn Attributes(&self) -> Temporary<AttrList>;
- fn GetAttribute(&self, name: DOMString) -> Option<DOMString>;
- fn GetAttributeNS(&self, namespace: Option<DOMString>, local_name: DOMString) -> Option<DOMString>;
- fn SetAttribute(&self, name: DOMString, value: DOMString) -> ErrorResult;
- fn SetAttributeNS(&self, namespace_url: Option<DOMString>, name: DOMString, value: DOMString) -> ErrorResult;
- fn RemoveAttribute(&self, name: DOMString);
- fn RemoveAttributeNS(&self, namespace: Option<DOMString>, localname: DOMString);
- fn HasAttribute(&self, name: DOMString) -> bool;
- fn HasAttributeNS(&self, namespace: Option<DOMString>, local_name: DOMString) -> bool;
- fn GetElementsByTagName(&self, localname: DOMString) -> Temporary<HTMLCollection>;
- fn GetElementsByTagNameNS(&self, maybe_ns: Option<DOMString>, localname: DOMString) -> Temporary<HTMLCollection>;
- fn GetElementsByClassName(&self, classes: DOMString) -> Temporary<HTMLCollection>;
- fn GetClientRects(&self) -> Temporary<ClientRectList>;
- fn GetBoundingClientRect(&self) -> Temporary<ClientRect>;
- fn GetInnerHTML(&self) -> Fallible<DOMString>;
- fn GetOuterHTML(&self) -> Fallible<DOMString>;
- fn Children(&self) -> Temporary<HTMLCollection>;
- fn QuerySelector(&self, selectors: DOMString) -> Fallible<Option<Temporary<Element>>>;
- fn QuerySelectorAll(&self, selectors: DOMString) -> Fallible<Temporary<NodeList>>;
- fn Remove(&self);
- fn Matches(&self, selectors: DOMString) -> Fallible<bool>;
-}
-
impl<'a> ElementMethods for JSRef<'a, Element> {
// http://dom.spec.whatwg.org/#dom-element-namespaceuri
fn NamespaceURI(&self) -> DOMString {
diff --git a/src/components/script/dom/event.rs b/src/components/script/dom/event.rs
index 8b159dd292e..b84eff12607 100644
--- a/src/components/script/dom/event.rs
+++ b/src/components/script/dom/event.rs
@@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::EventBinding;
-use dom::bindings::codegen::Bindings::EventBinding::EventConstants;
+use dom::bindings::codegen::Bindings::EventBinding::{EventConstants, EventMethods};
use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JS, JSRef, Temporary};
@@ -108,22 +108,6 @@ impl Event {
}
}
-pub trait EventMethods {
- fn EventPhase(&self) -> u16;
- fn Type(&self) -> DOMString;
- fn GetTarget(&self) -> Option<Temporary<EventTarget>>;
- fn GetCurrentTarget(&self) -> Option<Temporary<EventTarget>>;
- fn DefaultPrevented(&self) -> bool;
- fn PreventDefault(&self);
- fn StopPropagation(&self);
- fn StopImmediatePropagation(&self);
- fn Bubbles(&self) -> bool;
- fn Cancelable(&self) -> bool;
- fn TimeStamp(&self) -> u64;
- fn InitEvent(&self, type_: DOMString, bubbles: bool, cancelable: bool);
- fn IsTrusted(&self) -> bool;
-}
-
impl<'a> EventMethods for JSRef<'a, Event> {
fn EventPhase(&self) -> u16 {
self.phase.deref().get() as u16
diff --git a/src/components/script/dom/eventdispatcher.rs b/src/components/script/dom/eventdispatcher.rs
index f1ef7d473e9..f0648c13ce0 100644
--- a/src/components/script/dom/eventdispatcher.rs
+++ b/src/components/script/dom/eventdispatcher.rs
@@ -3,10 +3,11 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::callback::ReportExceptions;
+use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
use dom::bindings::codegen::InheritTypes::{EventTargetCast, NodeCast, NodeDerived};
use dom::bindings::js::{JS, JSRef, OptionalSettable, OptionalRootable, Root};
use dom::eventtarget::{Capturing, Bubbling, EventTarget};
-use dom::event::{Event, PhaseAtTarget, PhaseNone, PhaseBubbling, PhaseCapturing, EventMethods};
+use dom::event::{Event, PhaseAtTarget, PhaseNone, PhaseBubbling, PhaseCapturing};
use dom::node::{Node, NodeHelpers};
use dom::virtualmethods::vtable_for;
diff --git a/src/components/script/dom/eventtarget.rs b/src/components/script/dom/eventtarget.rs
index cd12200815b..e1a74b17aeb 100644
--- a/src/components/script/dom/eventtarget.rs
+++ b/src/components/script/dom/eventtarget.rs
@@ -5,6 +5,7 @@
use dom::bindings::callback::CallbackContainer;
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
use dom::bindings::codegen::Bindings::EventListenerBinding::EventListener;
+use dom::bindings::codegen::Bindings::EventTargetBinding::EventTargetMethods;
use dom::bindings::error::{Fallible, InvalidState, report_pending_exception};
use dom::bindings::js::JSRef;
use dom::bindings::trace::Traceable;
@@ -220,18 +221,6 @@ impl<'a> EventTargetHelpers for JSRef<'a, EventTarget> {
}
}
-pub trait EventTargetMethods {
- fn AddEventListener(&self,
- ty: DOMString,
- listener: Option<EventListener>,
- capture: bool);
- fn RemoveEventListener(&self,
- ty: DOMString,
- listener: Option<EventListener>,
- capture: bool);
- fn DispatchEvent(&self, event: &JSRef<Event>) -> Fallible<bool>;
-}
-
impl<'a> EventTargetMethods for JSRef<'a, EventTarget> {
fn AddEventListener(&self,
ty: DOMString,
diff --git a/src/components/script/dom/file.rs b/src/components/script/dom/file.rs
index 4cf46e013af..765ab731228 100644
--- a/src/components/script/dom/file.rs
+++ b/src/components/script/dom/file.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::FileBinding;
+use dom::bindings::codegen::Bindings::FileBinding::FileMethods;
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -34,10 +35,6 @@ impl File {
}
}
-pub trait FileMethods {
- fn Name(&self) -> DOMString;
-}
-
impl FileMethods for File {
fn Name(&self) -> DOMString {
self.name.clone()
diff --git a/src/components/script/dom/formdata.rs b/src/components/script/dom/formdata.rs
index 221865a4960..c50f50fb71f 100644
--- a/src/components/script/dom/formdata.rs
+++ b/src/components/script/dom/formdata.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::FormDataBinding;
+use dom::bindings::codegen::Bindings::FormDataBinding::FormDataMethods;
use dom::bindings::codegen::InheritTypes::FileCast;
use dom::bindings::codegen::UnionTypes::FileOrString::{FileOrString, eFile, eString};
use dom::bindings::error::{Fallible};
@@ -51,16 +52,6 @@ impl FormData {
}
}
-pub trait FormDataMethods {
- fn Append(&self, name: DOMString, value: &JSRef<Blob>, filename: Option<DOMString>);
- fn Append_(&self, name: DOMString, value: DOMString);
- fn Delete(&self, name: DOMString);
- fn Get(&self, name: DOMString) -> Option<FileOrString>;
- fn Has(&self, name: DOMString) -> bool;
- fn Set(&self, name: DOMString, value: &JSRef<Blob>, filename: Option<DOMString>);
- fn Set_(&self, name: DOMString, value: DOMString);
-}
-
impl<'a> FormDataMethods for JSRef<'a, FormData> {
fn Append(&self, name: DOMString, value: &JSRef<Blob>, filename: Option<DOMString>) {
let file = FileData(JS::from_rooted(&self.get_file_from_blob(value, filename)));
diff --git a/src/components/script/dom/htmlanchorelement.rs b/src/components/script/dom/htmlanchorelement.rs
index 2f5fd988e20..34b8591c4f5 100644
--- a/src/components/script/dom/htmlanchorelement.rs
+++ b/src/components/script/dom/htmlanchorelement.rs
@@ -2,15 +2,16 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods;
+use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
use dom::bindings::codegen::Bindings::HTMLAnchorElementBinding;
use dom::bindings::codegen::InheritTypes::HTMLAnchorElementDerived;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast, NodeCast};
use dom::bindings::js::{JSRef, Temporary, OptionalRootable};
use dom::bindings::utils::{Reflectable, Reflector};
use dom::document::{Document, DocumentHelpers};
-use dom::attr::AttrMethods;
use dom::element::{Element, AttributeHandlers, HTMLAnchorElementTypeId};
-use dom::event::{Event, EventMethods};
+use dom::event::Event;
use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::htmlelement::HTMLElement;
use dom::node::{Node, NodeHelpers, ElementNodeTypeId};
@@ -42,9 +43,6 @@ impl HTMLAnchorElement {
}
}
-pub trait HTMLAnchorElementMethods {
-}
-
trait PrivateHTMLAnchorElementHelpers {
fn handle_event_impl(&self, event: &JSRef<Event>);
}
diff --git a/src/components/script/dom/htmlappletelement.rs b/src/components/script/dom/htmlappletelement.rs
index 2d60cfcb265..97a3757f02e 100644
--- a/src/components/script/dom/htmlappletelement.rs
+++ b/src/components/script/dom/htmlappletelement.rs
@@ -37,9 +37,6 @@ impl HTMLAppletElement {
}
}
-pub trait HTMLAppletElementMethods {
-}
-
impl Reflectable for HTMLAppletElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlareaelement.rs b/src/components/script/dom/htmlareaelement.rs
index 15d942e5582..61f7890945c 100644
--- a/src/components/script/dom/htmlareaelement.rs
+++ b/src/components/script/dom/htmlareaelement.rs
@@ -37,9 +37,6 @@ impl HTMLAreaElement {
}
}
-pub trait HTMLAreaElementMethods {
-}
-
impl Reflectable for HTMLAreaElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlaudioelement.rs b/src/components/script/dom/htmlaudioelement.rs
index aaba21b009c..626e2e99619 100644
--- a/src/components/script/dom/htmlaudioelement.rs
+++ b/src/components/script/dom/htmlaudioelement.rs
@@ -37,9 +37,6 @@ impl HTMLAudioElement {
}
}
-pub trait HTMLAudioElementMethods {
-}
-
impl Reflectable for HTMLAudioElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlmediaelement.reflector()
diff --git a/src/components/script/dom/htmlbaseelement.rs b/src/components/script/dom/htmlbaseelement.rs
index e98dc341929..fbd3d5cdfca 100644
--- a/src/components/script/dom/htmlbaseelement.rs
+++ b/src/components/script/dom/htmlbaseelement.rs
@@ -37,9 +37,6 @@ impl HTMLBaseElement {
}
}
-pub trait HTMLBaseElementMethods {
-}
-
impl Reflectable for HTMLBaseElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlbodyelement.rs b/src/components/script/dom/htmlbodyelement.rs
index 551a074707e..a6ab3b047a8 100644
--- a/src/components/script/dom/htmlbodyelement.rs
+++ b/src/components/script/dom/htmlbodyelement.rs
@@ -4,6 +4,8 @@
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
use dom::bindings::codegen::Bindings::HTMLBodyElementBinding;
+use dom::bindings::codegen::Bindings::HTMLBodyElementBinding::HTMLBodyElementMethods;
+use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
use dom::bindings::codegen::InheritTypes::EventTargetCast;
use dom::bindings::codegen::InheritTypes::{HTMLBodyElementDerived, HTMLElementCast};
use dom::bindings::js::{JSRef, Temporary};
@@ -14,7 +16,6 @@ use dom::eventtarget::{EventTarget, NodeTargetTypeId, EventTargetHelpers};
use dom::htmlelement::HTMLElement;
use dom::node::{Node, ElementNodeTypeId, window_from_node};
use dom::virtualmethods::VirtualMethods;
-use dom::window::WindowMethods;
use servo_util::str::DOMString;
#[deriving(Encodable)]
@@ -41,11 +42,6 @@ impl HTMLBodyElement {
}
}
-pub trait HTMLBodyElementMethods {
- fn GetOnunload(&self) -> Option<EventHandlerNonNull>;
- fn SetOnunload(&self, listener: Option<EventHandlerNonNull>);
-}
-
impl<'a> HTMLBodyElementMethods for JSRef<'a, HTMLBodyElement> {
fn GetOnunload(&self) -> Option<EventHandlerNonNull> {
let win = window_from_node(self).root();
diff --git a/src/components/script/dom/htmlbrelement.rs b/src/components/script/dom/htmlbrelement.rs
index 8f2c231d759..70c415ba24a 100644
--- a/src/components/script/dom/htmlbrelement.rs
+++ b/src/components/script/dom/htmlbrelement.rs
@@ -37,9 +37,6 @@ impl HTMLBRElement {
}
}
-pub trait HTMLBRElementMethods {
-}
-
impl Reflectable for HTMLBRElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlbuttonelement.rs b/src/components/script/dom/htmlbuttonelement.rs
index 29efef9d8f7..4e89545737b 100644
--- a/src/components/script/dom/htmlbuttonelement.rs
+++ b/src/components/script/dom/htmlbuttonelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLButtonElementBinding;
+use dom::bindings::codegen::Bindings::HTMLButtonElementBinding::HTMLButtonElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLButtonElementDerived;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector};
@@ -38,10 +39,6 @@ impl HTMLButtonElement {
}
}
-pub trait HTMLButtonElementMethods {
- fn Validity(&self) -> Temporary<ValidityState>;
-}
-
impl<'a> HTMLButtonElementMethods for JSRef<'a, HTMLButtonElement> {
fn Validity(&self) -> Temporary<ValidityState> {
let window = window_from_node(self).root();
diff --git a/src/components/script/dom/htmlcanvaselement.rs b/src/components/script/dom/htmlcanvaselement.rs
index e9d742cb62c..bf5208be532 100644
--- a/src/components/script/dom/htmlcanvaselement.rs
+++ b/src/components/script/dom/htmlcanvaselement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLCanvasElementBinding;
+use dom::bindings::codegen::Bindings::HTMLCanvasElementBinding::HTMLCanvasElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLCanvasElementDerived;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast};
use dom::bindings::global::Window;
@@ -57,14 +58,6 @@ impl HTMLCanvasElement {
}
}
-pub trait HTMLCanvasElementMethods {
- fn Width(&self) -> u32;
- fn SetWidth(&self, width: u32);
- fn Height(&self) -> u32;
- fn SetHeight(&self, height: u32);
- fn GetContext(&self, id: DOMString) -> Option<Temporary<CanvasRenderingContext2D>>;
-}
-
impl<'a> HTMLCanvasElementMethods for JSRef<'a, HTMLCanvasElement> {
fn Width(&self) -> u32 {
self.width.get()
diff --git a/src/components/script/dom/htmlcollection.rs b/src/components/script/dom/htmlcollection.rs
index 65a617a10f6..42712cf50b4 100644
--- a/src/components/script/dom/htmlcollection.rs
+++ b/src/components/script/dom/htmlcollection.rs
@@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use dom::bindings::codegen::InheritTypes::{ElementCast, NodeCast};
use dom::bindings::codegen::Bindings::HTMLCollectionBinding;
+use dom::bindings::codegen::Bindings::HTMLCollectionBinding::HTMLCollectionMethods;
+use dom::bindings::codegen::InheritTypes::{ElementCast, NodeCast};
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -119,14 +120,6 @@ impl HTMLCollection {
}
}
-pub trait HTMLCollectionMethods {
- fn Length(&self) -> u32;
- fn Item(&self, index: u32) -> Option<Temporary<Element>>;
- fn NamedItem(&self, key: DOMString) -> Option<Temporary<Element>>;
- fn IndexedGetter(&self, index: u32, found: &mut bool) -> Option<Temporary<Element>>;
- fn NamedGetter(&self, name: DOMString, found: &mut bool) -> Option<Temporary<Element>>;
-}
-
impl<'a> HTMLCollectionMethods for JSRef<'a, HTMLCollection> {
// http://dom.spec.whatwg.org/#dom-htmlcollection-length
fn Length(&self) -> u32 {
diff --git a/src/components/script/dom/htmldataelement.rs b/src/components/script/dom/htmldataelement.rs
index 0d4926e371c..cf35507a824 100644
--- a/src/components/script/dom/htmldataelement.rs
+++ b/src/components/script/dom/htmldataelement.rs
@@ -37,9 +37,6 @@ impl HTMLDataElement {
}
}
-pub trait HTMLDataElementMethods {
-}
-
impl Reflectable for HTMLDataElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmldatalistelement.rs b/src/components/script/dom/htmldatalistelement.rs
index 5fed3ecf35f..df7e252a7c0 100644
--- a/src/components/script/dom/htmldatalistelement.rs
+++ b/src/components/script/dom/htmldatalistelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLDataListElementBinding;
+use dom::bindings::codegen::Bindings::HTMLDataListElementBinding::HTMLDataListElementMethods;
use dom::bindings::codegen::InheritTypes::{HTMLDataListElementDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector};
@@ -38,10 +39,6 @@ impl HTMLDataListElement {
}
}
-pub trait HTMLDataListElementMethods {
- fn Options(&self) -> Temporary<HTMLCollection>;
-}
-
impl<'a> HTMLDataListElementMethods for JSRef<'a, HTMLDataListElement> {
fn Options(&self) -> Temporary<HTMLCollection> {
struct HTMLDataListOptionsFilter;
diff --git a/src/components/script/dom/htmldirectoryelement.rs b/src/components/script/dom/htmldirectoryelement.rs
index 3370ef81a28..2539a389e19 100644
--- a/src/components/script/dom/htmldirectoryelement.rs
+++ b/src/components/script/dom/htmldirectoryelement.rs
@@ -37,9 +37,6 @@ impl HTMLDirectoryElement {
}
}
-pub trait HTMLDirectoryElementMethods {
-}
-
impl Reflectable for HTMLDirectoryElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmldivelement.rs b/src/components/script/dom/htmldivelement.rs
index 2f55c74daf4..01319b56f98 100644
--- a/src/components/script/dom/htmldivelement.rs
+++ b/src/components/script/dom/htmldivelement.rs
@@ -37,9 +37,6 @@ impl HTMLDivElement {
}
}
-pub trait HTMLDivElementMethods {
-}
-
impl Reflectable for HTMLDivElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmldlistelement.rs b/src/components/script/dom/htmldlistelement.rs
index b356733265d..0af66bca2c5 100644
--- a/src/components/script/dom/htmldlistelement.rs
+++ b/src/components/script/dom/htmldlistelement.rs
@@ -37,9 +37,6 @@ impl HTMLDListElement {
}
}
-pub trait HTMLDListElementMethods {
-}
-
impl Reflectable for HTMLDListElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlelement.rs b/src/components/script/dom/htmlelement.rs
index 75d8d6c9c59..22a4527f5c9 100644
--- a/src/components/script/dom/htmlelement.rs
+++ b/src/components/script/dom/htmlelement.rs
@@ -4,6 +4,8 @@
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
use dom::bindings::codegen::Bindings::HTMLElementBinding;
+use dom::bindings::codegen::Bindings::HTMLElementBinding::HTMLElementMethods;
+use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLFrameSetElementDerived};
use dom::bindings::codegen::InheritTypes::EventTargetCast;
use dom::bindings::codegen::InheritTypes::{HTMLElementDerived, HTMLBodyElementDerived};
@@ -14,7 +16,6 @@ use dom::element::{Element, ElementTypeId, HTMLElementTypeId};
use dom::eventtarget::{EventTarget, EventTargetHelpers, NodeTargetTypeId};
use dom::node::{Node, ElementNodeTypeId, window_from_node};
use dom::virtualmethods::VirtualMethods;
-use dom::window::WindowMethods;
use servo_util::namespace;
use servo_util::str::DOMString;
@@ -57,13 +58,6 @@ impl<'a> PrivateHTMLElementHelpers for JSRef<'a, HTMLElement> {
}
}
-pub trait HTMLElementMethods {
- fn GetOnclick(&self) -> Option<EventHandlerNonNull>;
- fn SetOnclick(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnload(&self) -> Option<EventHandlerNonNull>;
- fn SetOnload(&self, listener: Option<EventHandlerNonNull>);
-}
-
impl<'a> HTMLElementMethods for JSRef<'a, HTMLElement> {
fn GetOnclick(&self) -> Option<EventHandlerNonNull> {
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
diff --git a/src/components/script/dom/htmlembedelement.rs b/src/components/script/dom/htmlembedelement.rs
index c7ab61da72b..142e29ab9ef 100644
--- a/src/components/script/dom/htmlembedelement.rs
+++ b/src/components/script/dom/htmlembedelement.rs
@@ -37,9 +37,6 @@ impl HTMLEmbedElement {
}
}
-pub trait HTMLEmbedElementMethods {
-}
-
impl Reflectable for HTMLEmbedElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlfieldsetelement.rs b/src/components/script/dom/htmlfieldsetelement.rs
index 29a649a5817..eed51e9a86a 100644
--- a/src/components/script/dom/htmlfieldsetelement.rs
+++ b/src/components/script/dom/htmlfieldsetelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding;
+use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding::HTMLFieldSetElementMethods;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLFieldSetElementDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector};
@@ -39,11 +40,6 @@ impl HTMLFieldSetElement {
}
}
-pub trait HTMLFieldSetElementMethods {
- fn Elements(&self) -> Temporary<HTMLCollection>;
- fn Validity(&self) -> Temporary<ValidityState>;
-}
-
impl<'a> HTMLFieldSetElementMethods for JSRef<'a, HTMLFieldSetElement> {
// http://www.whatwg.org/html/#dom-fieldset-elements
fn Elements(&self) -> Temporary<HTMLCollection> {
diff --git a/src/components/script/dom/htmlfontelement.rs b/src/components/script/dom/htmlfontelement.rs
index 0ae2d192676..a26d83fb7d2 100644
--- a/src/components/script/dom/htmlfontelement.rs
+++ b/src/components/script/dom/htmlfontelement.rs
@@ -37,9 +37,6 @@ impl HTMLFontElement {
}
}
-pub trait HTMLFontElementMethods {
-}
-
impl Reflectable for HTMLFontElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlformelement.rs b/src/components/script/dom/htmlformelement.rs
index 82b698100b9..e31179ed424 100644
--- a/src/components/script/dom/htmlformelement.rs
+++ b/src/components/script/dom/htmlformelement.rs
@@ -37,9 +37,6 @@ impl HTMLFormElement {
}
}
-pub trait HTMLFormElementMethods {
-}
-
impl Reflectable for HTMLFormElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlframeelement.rs b/src/components/script/dom/htmlframeelement.rs
index 8c20205b008..dd362a3947a 100644
--- a/src/components/script/dom/htmlframeelement.rs
+++ b/src/components/script/dom/htmlframeelement.rs
@@ -37,9 +37,6 @@ impl HTMLFrameElement {
}
}
-pub trait HTMLFrameElementMethods {
-}
-
impl Reflectable for HTMLFrameElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlframesetelement.rs b/src/components/script/dom/htmlframesetelement.rs
index 3b168f2006e..ad6168a0613 100644
--- a/src/components/script/dom/htmlframesetelement.rs
+++ b/src/components/script/dom/htmlframesetelement.rs
@@ -37,9 +37,6 @@ impl HTMLFrameSetElement {
}
}
-pub trait HTMLFrameSetElementMethods {
-}
-
impl Reflectable for HTMLFrameSetElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlheadelement.rs b/src/components/script/dom/htmlheadelement.rs
index fb9dae6a310..f3738058179 100644
--- a/src/components/script/dom/htmlheadelement.rs
+++ b/src/components/script/dom/htmlheadelement.rs
@@ -37,9 +37,6 @@ impl HTMLHeadElement {
}
}
-pub trait HTMLHeadElementMethods {
-}
-
impl Reflectable for HTMLHeadElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlheadingelement.rs b/src/components/script/dom/htmlheadingelement.rs
index 2a4121ab1b9..b869e9764e1 100644
--- a/src/components/script/dom/htmlheadingelement.rs
+++ b/src/components/script/dom/htmlheadingelement.rs
@@ -49,9 +49,6 @@ impl HTMLHeadingElement {
}
}
-pub trait HTMLHeadingElementMethods {
-}
-
impl Reflectable for HTMLHeadingElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlhrelement.rs b/src/components/script/dom/htmlhrelement.rs
index 916592f420e..18a92df2679 100644
--- a/src/components/script/dom/htmlhrelement.rs
+++ b/src/components/script/dom/htmlhrelement.rs
@@ -37,9 +37,6 @@ impl HTMLHRElement {
}
}
-pub trait HTMLHRElementMethods {
-}
-
impl Reflectable for HTMLHRElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlhtmlelement.rs b/src/components/script/dom/htmlhtmlelement.rs
index 04684e2da38..117cdf78257 100644
--- a/src/components/script/dom/htmlhtmlelement.rs
+++ b/src/components/script/dom/htmlhtmlelement.rs
@@ -37,9 +37,6 @@ impl HTMLHtmlElement {
}
}
-pub trait HTMLHtmlElementMethods {
-}
-
impl Reflectable for HTMLHtmlElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmliframeelement.rs b/src/components/script/dom/htmliframeelement.rs
index 31a41b9f956..d74f1c223a7 100644
--- a/src/components/script/dom/htmliframeelement.rs
+++ b/src/components/script/dom/htmliframeelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLIFrameElementBinding;
+use dom::bindings::codegen::Bindings::HTMLIFrameElementBinding::HTMLIFrameElementMethods;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLIFrameElementDerived, HTMLElementCast};
use dom::bindings::js::{JSRef, Temporary, OptionalRootable};
use dom::bindings::trace::Traceable;
@@ -90,14 +91,6 @@ impl HTMLIFrameElement {
}
}
-pub trait HTMLIFrameElementMethods {
- fn Src(&self) -> DOMString;
- fn SetSrc(&self, src: DOMString);
- fn Sandbox(&self) -> DOMString;
- fn SetSandbox(&self, sandbox: DOMString);
- fn GetContentWindow(&self) -> Option<Temporary<Window>>;
-}
-
impl<'a> HTMLIFrameElementMethods for JSRef<'a, HTMLIFrameElement> {
fn Src(&self) -> DOMString {
let element: &JSRef<Element> = ElementCast::from_ref(self);
diff --git a/src/components/script/dom/htmlimageelement.rs b/src/components/script/dom/htmlimageelement.rs
index 31eb2687aab..7cffec11099 100644
--- a/src/components/script/dom/htmlimageelement.rs
+++ b/src/components/script/dom/htmlimageelement.rs
@@ -4,6 +4,7 @@
use dom::attr::AttrValue;
use dom::bindings::codegen::Bindings::HTMLImageElementBinding;
+use dom::bindings::codegen::Bindings::HTMLImageElementBinding::HTMLImageElementMethods;
use dom::bindings::codegen::InheritTypes::{NodeCast, ElementCast, HTMLElementCast, HTMLImageElementDerived};
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::trace::Untraceable;
@@ -90,33 +91,6 @@ impl LayoutHTMLImageElementHelpers for JS<HTMLImageElement> {
}
}
-pub trait HTMLImageElementMethods {
- fn Alt(&self) -> DOMString;
- fn SetAlt(&self, alt: DOMString);
- fn Src(&self) -> DOMString;
- fn SetSrc(&self, src: DOMString);
- fn UseMap(&self) -> DOMString;
- fn SetUseMap(&self, use_map: DOMString);
- fn IsMap(&self) -> bool;
- fn SetIsMap(&self, is_map: bool);
- fn Width(&self) -> u32;
- fn SetWidth(&self, width: u32);
- fn Height(&self) -> u32;
- fn SetHeight(&self, height: u32);
- fn Name(&self) -> DOMString;
- fn SetName(&self, name: DOMString);
- fn Align(&self) -> DOMString;
- fn SetAlign(&self, align: DOMString);
- fn Hspace(&self) -> u32;
- fn SetHspace(&self, hspace: u32);
- fn Vspace(&self) -> u32;
- fn SetVspace(&self, vspace: u32);
- fn LongDesc(&self) -> DOMString;
- fn SetLongDesc(&self, longdesc: DOMString);
- fn Border(&self) -> DOMString;
- fn SetBorder(&self, border: DOMString);
-}
-
impl<'a> HTMLImageElementMethods for JSRef<'a, HTMLImageElement> {
fn Alt(&self) -> DOMString {
let element: &JSRef<Element> = ElementCast::from_ref(self);
diff --git a/src/components/script/dom/htmlinputelement.rs b/src/components/script/dom/htmlinputelement.rs
index 88dd1eac66a..1209fa11619 100644
--- a/src/components/script/dom/htmlinputelement.rs
+++ b/src/components/script/dom/htmlinputelement.rs
@@ -37,9 +37,6 @@ impl HTMLInputElement {
}
}
-pub trait HTMLInputElementMethods {
-}
-
impl Reflectable for HTMLInputElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmllabelelement.rs b/src/components/script/dom/htmllabelelement.rs
index 0b711eb7e16..54349aa5bf5 100644
--- a/src/components/script/dom/htmllabelelement.rs
+++ b/src/components/script/dom/htmllabelelement.rs
@@ -37,9 +37,6 @@ impl HTMLLabelElement {
}
}
-pub trait HTMLLabelElementMethods {
-}
-
impl Reflectable for HTMLLabelElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmllegendelement.rs b/src/components/script/dom/htmllegendelement.rs
index f4395bda5e5..168f94bc27e 100644
--- a/src/components/script/dom/htmllegendelement.rs
+++ b/src/components/script/dom/htmllegendelement.rs
@@ -37,9 +37,6 @@ impl HTMLLegendElement {
}
}
-pub trait HTMLLegendElementMethods {
-}
-
impl Reflectable for HTMLLegendElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmllielement.rs b/src/components/script/dom/htmllielement.rs
index f393c98618a..5d15d405d94 100644
--- a/src/components/script/dom/htmllielement.rs
+++ b/src/components/script/dom/htmllielement.rs
@@ -37,9 +37,6 @@ impl HTMLLIElement {
}
}
-pub trait HTMLLIElementMethods {
-}
-
impl Reflectable for HTMLLIElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmllinkelement.rs b/src/components/script/dom/htmllinkelement.rs
index 114b6efef06..c10c74adc89 100644
--- a/src/components/script/dom/htmllinkelement.rs
+++ b/src/components/script/dom/htmllinkelement.rs
@@ -37,9 +37,6 @@ impl HTMLLinkElement {
}
}
-pub trait HTMLLinkElementMethods {
-}
-
impl Reflectable for HTMLLinkElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlmapelement.rs b/src/components/script/dom/htmlmapelement.rs
index df72efa0a20..21e9a04364f 100644
--- a/src/components/script/dom/htmlmapelement.rs
+++ b/src/components/script/dom/htmlmapelement.rs
@@ -37,9 +37,6 @@ impl HTMLMapElement {
}
}
-pub trait HTMLMapElementMethods {
-}
-
impl Reflectable for HTMLMapElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlmediaelement.rs b/src/components/script/dom/htmlmediaelement.rs
index 2654316702a..b9e1ad7782d 100644
--- a/src/components/script/dom/htmlmediaelement.rs
+++ b/src/components/script/dom/htmlmediaelement.rs
@@ -35,9 +35,6 @@ impl HTMLMediaElement {
}
}
-pub trait HTMLMediaElementMethods {
-}
-
impl Reflectable for HTMLMediaElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlmetaelement.rs b/src/components/script/dom/htmlmetaelement.rs
index f9fb2bc769c..224d400a216 100644
--- a/src/components/script/dom/htmlmetaelement.rs
+++ b/src/components/script/dom/htmlmetaelement.rs
@@ -37,9 +37,6 @@ impl HTMLMetaElement {
}
}
-pub trait HTMLMetaElementMethods {
-}
-
impl Reflectable for HTMLMetaElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlmeterelement.rs b/src/components/script/dom/htmlmeterelement.rs
index 69391d52bab..a0eeff8cb92 100644
--- a/src/components/script/dom/htmlmeterelement.rs
+++ b/src/components/script/dom/htmlmeterelement.rs
@@ -37,9 +37,6 @@ impl HTMLMeterElement {
}
}
-pub trait HTMLMeterElementMethods {
-}
-
impl Reflectable for HTMLMeterElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlmodelement.rs b/src/components/script/dom/htmlmodelement.rs
index fc6435f9094..6ea001f5185 100644
--- a/src/components/script/dom/htmlmodelement.rs
+++ b/src/components/script/dom/htmlmodelement.rs
@@ -37,9 +37,6 @@ impl HTMLModElement {
}
}
-pub trait HTMLModElementMethods {
-}
-
impl Reflectable for HTMLModElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlobjectelement.rs b/src/components/script/dom/htmlobjectelement.rs
index eff1718ac69..407e4234fca 100644
--- a/src/components/script/dom/htmlobjectelement.rs
+++ b/src/components/script/dom/htmlobjectelement.rs
@@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use dom::attr::AttrMethods;
+use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods;
use dom::bindings::codegen::Bindings::HTMLObjectElementBinding;
+use dom::bindings::codegen::Bindings::HTMLObjectElementBinding::HTMLObjectElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLObjectElementDerived;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast};
use dom::bindings::js::{JSRef, Temporary};
@@ -77,10 +78,6 @@ pub fn is_image_data(uri: &str) -> bool {
types.iter().any(|&type_| uri.starts_with(type_))
}
-pub trait HTMLObjectElementMethods {
- fn Validity(&self) -> Temporary<ValidityState>;
-}
-
impl<'a> HTMLObjectElementMethods for JSRef<'a, HTMLObjectElement> {
fn Validity(&self) -> Temporary<ValidityState> {
let window = window_from_node(self).root();
diff --git a/src/components/script/dom/htmlolistelement.rs b/src/components/script/dom/htmlolistelement.rs
index 4735efa09bb..11637fe3bd5 100644
--- a/src/components/script/dom/htmlolistelement.rs
+++ b/src/components/script/dom/htmlolistelement.rs
@@ -37,9 +37,6 @@ impl HTMLOListElement {
}
}
-pub trait HTMLOListElementMethods {
-}
-
impl Reflectable for HTMLOListElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmloptgroupelement.rs b/src/components/script/dom/htmloptgroupelement.rs
index cbe64a3dd5f..8f3be20a432 100644
--- a/src/components/script/dom/htmloptgroupelement.rs
+++ b/src/components/script/dom/htmloptgroupelement.rs
@@ -37,9 +37,6 @@ impl HTMLOptGroupElement {
}
}
-pub trait HTMLOptGroupElementMethods {
-}
-
impl Reflectable for HTMLOptGroupElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmloptionelement.rs b/src/components/script/dom/htmloptionelement.rs
index 885716d610e..68b1422412a 100644
--- a/src/components/script/dom/htmloptionelement.rs
+++ b/src/components/script/dom/htmloptionelement.rs
@@ -37,9 +37,6 @@ impl HTMLOptionElement {
}
}
-pub trait HTMLOptionElementMethods {
-}
-
impl Reflectable for HTMLOptionElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmloutputelement.rs b/src/components/script/dom/htmloutputelement.rs
index 46de9880ac0..19926cfe4fc 100644
--- a/src/components/script/dom/htmloutputelement.rs
+++ b/src/components/script/dom/htmloutputelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLOutputElementBinding;
+use dom::bindings::codegen::Bindings::HTMLOutputElementBinding::HTMLOutputElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLOutputElementDerived;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector};
@@ -38,10 +39,6 @@ impl HTMLOutputElement {
}
}
-pub trait HTMLOutputElementMethods {
- fn Validity(&self) -> Temporary<ValidityState>;
-}
-
impl<'a> HTMLOutputElementMethods for JSRef<'a, HTMLOutputElement> {
fn Validity(&self) -> Temporary<ValidityState> {
let window = window_from_node(self).root();
diff --git a/src/components/script/dom/htmlparagraphelement.rs b/src/components/script/dom/htmlparagraphelement.rs
index 665d6f39c8f..fe4dd4317cf 100644
--- a/src/components/script/dom/htmlparagraphelement.rs
+++ b/src/components/script/dom/htmlparagraphelement.rs
@@ -37,9 +37,6 @@ impl HTMLParagraphElement {
}
}
-pub trait HTMLParagraphElementMethods {
-}
-
impl Reflectable for HTMLParagraphElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlparamelement.rs b/src/components/script/dom/htmlparamelement.rs
index 3b2a190d8a7..0f181bd1b32 100644
--- a/src/components/script/dom/htmlparamelement.rs
+++ b/src/components/script/dom/htmlparamelement.rs
@@ -37,9 +37,6 @@ impl HTMLParamElement {
}
}
-pub trait HTMLParamElementMethods {
-}
-
impl Reflectable for HTMLParamElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlpreelement.rs b/src/components/script/dom/htmlpreelement.rs
index 41b518271b5..25f9c75bc15 100644
--- a/src/components/script/dom/htmlpreelement.rs
+++ b/src/components/script/dom/htmlpreelement.rs
@@ -37,9 +37,6 @@ impl HTMLPreElement {
}
}
-pub trait HTMLPreElementMethods {
-}
-
impl Reflectable for HTMLPreElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlprogresselement.rs b/src/components/script/dom/htmlprogresselement.rs
index 144f7eb40e9..74dcab1730f 100644
--- a/src/components/script/dom/htmlprogresselement.rs
+++ b/src/components/script/dom/htmlprogresselement.rs
@@ -37,9 +37,6 @@ impl HTMLProgressElement {
}
}
-pub trait HTMLProgressElementMethods {
-}
-
impl Reflectable for HTMLProgressElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlquoteelement.rs b/src/components/script/dom/htmlquoteelement.rs
index 0055e1fb894..488a82c394d 100644
--- a/src/components/script/dom/htmlquoteelement.rs
+++ b/src/components/script/dom/htmlquoteelement.rs
@@ -37,9 +37,6 @@ impl HTMLQuoteElement {
}
}
-pub trait HTMLQuoteElementMethods {
-}
-
impl Reflectable for HTMLQuoteElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlscriptelement.rs b/src/components/script/dom/htmlscriptelement.rs
index a94efab1a88..90f4c60abc3 100644
--- a/src/components/script/dom/htmlscriptelement.rs
+++ b/src/components/script/dom/htmlscriptelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLScriptElementBinding;
+use dom::bindings::codegen::Bindings::HTMLScriptElementBinding::HTMLScriptElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLScriptElementDerived;
use dom::bindings::codegen::InheritTypes::ElementCast;
use dom::bindings::js::{JSRef, Temporary};
@@ -38,10 +39,6 @@ impl HTMLScriptElement {
}
}
-pub trait HTMLScriptElementMethods {
- fn Src(&self) -> DOMString;
-}
-
impl<'a> HTMLScriptElementMethods for JSRef<'a, HTMLScriptElement> {
fn Src(&self) -> DOMString {
let element: &JSRef<Element> = ElementCast::from_ref(self);
diff --git a/src/components/script/dom/htmlselectelement.rs b/src/components/script/dom/htmlselectelement.rs
index 147252dc2cd..3170006bbbd 100644
--- a/src/components/script/dom/htmlselectelement.rs
+++ b/src/components/script/dom/htmlselectelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLSelectElementBinding;
+use dom::bindings::codegen::Bindings::HTMLSelectElementBinding::HTMLSelectElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLSelectElementDerived;
use dom::bindings::codegen::UnionTypes::HTMLElementOrLong::HTMLElementOrLong;
use dom::bindings::codegen::UnionTypes::HTMLOptionElementOrHTMLOptGroupElement::HTMLOptionElementOrHTMLOptGroupElement;
@@ -40,11 +41,6 @@ impl HTMLSelectElement {
}
}
-pub trait HTMLSelectElementMethods {
- fn Validity(&self) -> Temporary<ValidityState>;
- fn Add(&self, _element: HTMLOptionElementOrHTMLOptGroupElement, _before: Option<HTMLElementOrLong>);
-}
-
impl<'a> HTMLSelectElementMethods for JSRef<'a, HTMLSelectElement> {
fn Validity(&self) -> Temporary<ValidityState> {
let window = window_from_node(self).root();
diff --git a/src/components/script/dom/htmlsourceelement.rs b/src/components/script/dom/htmlsourceelement.rs
index 402d62ae471..cb27b8c75d2 100644
--- a/src/components/script/dom/htmlsourceelement.rs
+++ b/src/components/script/dom/htmlsourceelement.rs
@@ -37,9 +37,6 @@ impl HTMLSourceElement {
}
}
-pub trait HTMLSourceElementMethods {
-}
-
impl Reflectable for HTMLSourceElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlspanelement.rs b/src/components/script/dom/htmlspanelement.rs
index 1f47b8900eb..9b98b8fa28d 100644
--- a/src/components/script/dom/htmlspanelement.rs
+++ b/src/components/script/dom/htmlspanelement.rs
@@ -37,9 +37,6 @@ impl HTMLSpanElement {
}
}
-pub trait HTMLSpanElementMethods {
-}
-
impl Reflectable for HTMLSpanElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlstyleelement.rs b/src/components/script/dom/htmlstyleelement.rs
index 00f31bfe1b2..eb4b29e1c97 100644
--- a/src/components/script/dom/htmlstyleelement.rs
+++ b/src/components/script/dom/htmlstyleelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLStyleElementBinding;
+use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods;
use dom::bindings::codegen::InheritTypes::{HTMLElementCast, HTMLStyleElementDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector};
@@ -10,7 +11,7 @@ use dom::document::Document;
use dom::element::HTMLStyleElementTypeId;
use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::htmlelement::HTMLElement;
-use dom::node::{Node, NodeMethods, NodeHelpers, ElementNodeTypeId, window_from_node};
+use dom::node::{Node, NodeHelpers, ElementNodeTypeId, window_from_node};
use dom::virtualmethods::VirtualMethods;
use html::cssparse::parse_inline_css;
use layout_interface::{AddStylesheetMsg, LayoutChan};
@@ -40,9 +41,6 @@ impl HTMLStyleElement {
}
}
-pub trait HTMLStyleElementMethods {
-}
-
pub trait StyleElementHelpers {
fn parse_own_css(&self);
}
diff --git a/src/components/script/dom/htmltablecaptionelement.rs b/src/components/script/dom/htmltablecaptionelement.rs
index c9c1141e99e..92c45b49400 100644
--- a/src/components/script/dom/htmltablecaptionelement.rs
+++ b/src/components/script/dom/htmltablecaptionelement.rs
@@ -37,9 +37,6 @@ impl HTMLTableCaptionElement {
}
}
-pub trait HTMLTableCaptionElementMethods {
-}
-
impl Reflectable for HTMLTableCaptionElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltablecellelement.rs b/src/components/script/dom/htmltablecellelement.rs
index 422598f24ee..116768e23af 100644
--- a/src/components/script/dom/htmltablecellelement.rs
+++ b/src/components/script/dom/htmltablecellelement.rs
@@ -35,9 +35,6 @@ impl HTMLTableCellElement {
}
}
-pub trait HTMLTableCellElementMethods {
-}
-
impl Reflectable for HTMLTableCellElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltablecolelement.rs b/src/components/script/dom/htmltablecolelement.rs
index 6239b0e3875..48d6164e500 100644
--- a/src/components/script/dom/htmltablecolelement.rs
+++ b/src/components/script/dom/htmltablecolelement.rs
@@ -37,9 +37,6 @@ impl HTMLTableColElement {
}
}
-pub trait HTMLTableColElementMethods {
-}
-
impl Reflectable for HTMLTableColElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltabledatacellelement.rs b/src/components/script/dom/htmltabledatacellelement.rs
index 519645287d8..07027b5d294 100644
--- a/src/components/script/dom/htmltabledatacellelement.rs
+++ b/src/components/script/dom/htmltabledatacellelement.rs
@@ -37,9 +37,6 @@ impl HTMLTableDataCellElement {
}
}
-pub trait HTMLTableDataCellElementMethods {
-}
-
impl Reflectable for HTMLTableDataCellElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmltablecellelement.reflector()
diff --git a/src/components/script/dom/htmltableelement.rs b/src/components/script/dom/htmltableelement.rs
index 1660a1fa368..5c67618a66f 100644
--- a/src/components/script/dom/htmltableelement.rs
+++ b/src/components/script/dom/htmltableelement.rs
@@ -37,9 +37,6 @@ impl HTMLTableElement {
}
}
-pub trait HTMLTableElementMethods {
-}
-
impl Reflectable for HTMLTableElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltableheadercellelement.rs b/src/components/script/dom/htmltableheadercellelement.rs
index 80ba11973f0..2ad288951da 100644
--- a/src/components/script/dom/htmltableheadercellelement.rs
+++ b/src/components/script/dom/htmltableheadercellelement.rs
@@ -37,9 +37,6 @@ impl HTMLTableHeaderCellElement {
}
}
-pub trait HTMLTableHeaderCellElementMethods {
-}
-
impl Reflectable for HTMLTableHeaderCellElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmltablecellelement.reflector()
diff --git a/src/components/script/dom/htmltablerowelement.rs b/src/components/script/dom/htmltablerowelement.rs
index 29ddc3fe3c0..de8978c75cd 100644
--- a/src/components/script/dom/htmltablerowelement.rs
+++ b/src/components/script/dom/htmltablerowelement.rs
@@ -37,9 +37,6 @@ impl HTMLTableRowElement {
}
}
-pub trait HTMLTableRowElementMethods {
-}
-
impl Reflectable for HTMLTableRowElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltablesectionelement.rs b/src/components/script/dom/htmltablesectionelement.rs
index c02def0555b..1dc372862fc 100644
--- a/src/components/script/dom/htmltablesectionelement.rs
+++ b/src/components/script/dom/htmltablesectionelement.rs
@@ -37,9 +37,6 @@ impl HTMLTableSectionElement {
}
}
-pub trait HTMLTableSectionElementMethods {
-}
-
impl Reflectable for HTMLTableSectionElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltemplateelement.rs b/src/components/script/dom/htmltemplateelement.rs
index 81e4b3d183b..12be7665169 100644
--- a/src/components/script/dom/htmltemplateelement.rs
+++ b/src/components/script/dom/htmltemplateelement.rs
@@ -37,9 +37,6 @@ impl HTMLTemplateElement {
}
}
-pub trait HTMLTemplateElementMethods {
-}
-
impl Reflectable for HTMLTemplateElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltextareaelement.rs b/src/components/script/dom/htmltextareaelement.rs
index 0b12cf8dad1..f4170a20f1f 100644
--- a/src/components/script/dom/htmltextareaelement.rs
+++ b/src/components/script/dom/htmltextareaelement.rs
@@ -37,9 +37,6 @@ impl HTMLTextAreaElement {
}
}
-pub trait HTMLTextAreaElementMethods {
-}
-
impl Reflectable for HTMLTextAreaElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltimeelement.rs b/src/components/script/dom/htmltimeelement.rs
index 8d0703e73a8..8eeb695d4c6 100644
--- a/src/components/script/dom/htmltimeelement.rs
+++ b/src/components/script/dom/htmltimeelement.rs
@@ -37,9 +37,6 @@ impl HTMLTimeElement {
}
}
-pub trait HTMLTimeElementMethods {
-}
-
impl Reflectable for HTMLTimeElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltitleelement.rs b/src/components/script/dom/htmltitleelement.rs
index 93df47da3a9..5a9f2fcd0a1 100644
--- a/src/components/script/dom/htmltitleelement.rs
+++ b/src/components/script/dom/htmltitleelement.rs
@@ -37,9 +37,6 @@ impl HTMLTitleElement {
}
}
-pub trait HTMLTitleElementMethods {
-}
-
impl Reflectable for HTMLTitleElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmltrackelement.rs b/src/components/script/dom/htmltrackelement.rs
index a9c20549fe8..5d22571db67 100644
--- a/src/components/script/dom/htmltrackelement.rs
+++ b/src/components/script/dom/htmltrackelement.rs
@@ -37,9 +37,6 @@ impl HTMLTrackElement {
}
}
-pub trait HTMLTrackElementMethods {
-}
-
impl Reflectable for HTMLTrackElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlulistelement.rs b/src/components/script/dom/htmlulistelement.rs
index f0d1c5d6385..228152cc663 100644
--- a/src/components/script/dom/htmlulistelement.rs
+++ b/src/components/script/dom/htmlulistelement.rs
@@ -37,9 +37,6 @@ impl HTMLUListElement {
}
}
-pub trait HTMLUListElementMethods {
-}
-
impl Reflectable for HTMLUListElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlunknownelement.rs b/src/components/script/dom/htmlunknownelement.rs
index 02598d6485a..2956b0c459a 100644
--- a/src/components/script/dom/htmlunknownelement.rs
+++ b/src/components/script/dom/htmlunknownelement.rs
@@ -37,9 +37,6 @@ impl HTMLUnknownElement {
}
}
-pub trait HTMLUnknownElementMethods {
-}
-
impl Reflectable for HTMLUnknownElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector()
diff --git a/src/components/script/dom/htmlvideoelement.rs b/src/components/script/dom/htmlvideoelement.rs
index bcd8c43a2ab..365b9a38f20 100644
--- a/src/components/script/dom/htmlvideoelement.rs
+++ b/src/components/script/dom/htmlvideoelement.rs
@@ -37,9 +37,6 @@ impl HTMLVideoElement {
}
}
-pub trait HTMLVideoElementMethods {
-}
-
impl Reflectable for HTMLVideoElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlmediaelement.reflector()
diff --git a/src/components/script/dom/location.rs b/src/components/script/dom/location.rs
index 1a4eead966b..2804f77957e 100644
--- a/src/components/script/dom/location.rs
+++ b/src/components/script/dom/location.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::LocationBinding;
+use dom::bindings::codegen::Bindings::LocationBinding::LocationMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -34,12 +35,6 @@ impl Location {
}
}
-pub trait LocationMethods {
- fn Href(&self) -> DOMString;
- fn Search(&self) -> DOMString;
- fn Hash(&self) -> DOMString;
-}
-
impl<'a> LocationMethods for JSRef<'a, Location> {
fn Href(&self) -> DOMString {
self.page.get_url().serialize()
diff --git a/src/components/script/dom/messageevent.rs b/src/components/script/dom/messageevent.rs
index 05eca45fd71..a72e38cd650 100644
--- a/src/components/script/dom/messageevent.rs
+++ b/src/components/script/dom/messageevent.rs
@@ -2,7 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
use dom::bindings::codegen::Bindings::MessageEventBinding;
+use dom::bindings::codegen::Bindings::MessageEventBinding::MessageEventMethods;
use dom::bindings::codegen::InheritTypes::{EventCast, MessageEventDerived};
use dom::bindings::conversions::ToJSValConvertible;
use dom::bindings::error::Fallible;
@@ -10,7 +12,7 @@ use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::trace::Traceable;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
-use dom::event::{Event, EventMethods, MessageEventTypeId};
+use dom::event::{Event, MessageEventTypeId};
use dom::eventtarget::{EventTarget, EventTargetHelpers};
use servo_util::str::DOMString;
@@ -78,12 +80,6 @@ impl MessageEvent {
}
}
-pub trait MessageEventMethods {
- fn Data(&self, cx: *mut JSContext) -> JSVal;
- fn Origin(&self) -> DOMString;
- fn LastEventId(&self) -> DOMString;
-}
-
impl<'a> MessageEventMethods for JSRef<'a, MessageEvent> {
fn Data(&self, _cx: *mut JSContext) -> JSVal {
*self.data
diff --git a/src/components/script/dom/mouseevent.rs b/src/components/script/dom/mouseevent.rs
index aa164c1eafb..aa750b501ba 100644
--- a/src/components/script/dom/mouseevent.rs
+++ b/src/components/script/dom/mouseevent.rs
@@ -3,6 +3,8 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::MouseEventBinding;
+use dom::bindings::codegen::Bindings::MouseEventBinding::MouseEventMethods;
+use dom::bindings::codegen::Bindings::UIEventBinding::UIEventMethods;
use dom::bindings::codegen::InheritTypes::{UIEventCast, MouseEventDerived};
use dom::bindings::error::Fallible;
use dom::bindings::global::{GlobalRef, Window};
@@ -11,7 +13,7 @@ use dom::bindings::trace::Traceable;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::event::{Event, MouseEventTypeId};
use dom::eventtarget::EventTarget;
-use dom::uievent::{UIEvent, UIEventMethods};
+use dom::uievent::UIEvent;
use dom::window::Window;
use servo_util::str::DOMString;
use std::cell::Cell;
@@ -100,35 +102,6 @@ impl MouseEvent {
}
}
-pub trait MouseEventMethods {
- fn ScreenX(&self) -> i32;
- fn ScreenY(&self) -> i32;
- fn ClientX(&self) -> i32;
- fn ClientY(&self) -> i32;
- fn CtrlKey(&self) -> bool;
- fn ShiftKey(&self) -> bool;
- fn AltKey(&self) -> bool;
- fn MetaKey(&self) -> bool;
- fn Button(&self) -> i16;
- fn GetRelatedTarget(&self) -> Option<Temporary<EventTarget>>;
- fn InitMouseEvent(&self,
- typeArg: DOMString,
- canBubbleArg: bool,
- cancelableArg: bool,
- viewArg: Option<JSRef<Window>>,
- detailArg: i32,
- screenXArg: i32,
- screenYArg: i32,
- clientXArg: i32,
- clientYArg: i32,
- ctrlKeyArg: bool,
- altKeyArg: bool,
- shiftKeyArg: bool,
- metaKeyArg: bool,
- buttonArg: i16,
- relatedTargetArg: Option<JSRef<EventTarget>>);
-}
-
impl<'a> MouseEventMethods for JSRef<'a, MouseEvent> {
fn ScreenX(&self) -> i32 {
self.screen_x.deref().get()
diff --git a/src/components/script/dom/navigator.rs b/src/components/script/dom/navigator.rs
index 06ccc910dc9..d1d7596aa6e 100644
--- a/src/components/script/dom/navigator.rs
+++ b/src/components/script/dom/navigator.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::NavigatorBinding;
+use dom::bindings::codegen::Bindings::NavigatorBinding::NavigatorMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -28,14 +29,6 @@ impl Navigator {
}
}
-pub trait NavigatorMethods {
- fn Product(&self) -> DOMString;
- fn TaintEnabled(&self) -> bool;
- fn AppName(&self) -> DOMString;
- fn AppCodeName(&self) -> DOMString;
- fn Platform(&self) -> DOMString;
-}
-
impl<'a> NavigatorMethods for JSRef<'a, Navigator> {
fn Product(&self) -> DOMString {
"Gecko".to_string()
diff --git a/src/components/script/dom/node.rs b/src/components/script/dom/node.rs
index fb456fa3b1f..325df6a29d0 100644
--- a/src/components/script/dom/node.rs
+++ b/src/components/script/dom/node.rs
@@ -5,12 +5,17 @@
//! The core DOM types. Defines the basic DOM hierarchy as well as all the HTML elements.
use cssparser::tokenize;
-use dom::attr::{Attr, AttrMethods};
+use dom::attr::Attr;
+use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods;
+use dom::bindings::codegen::Bindings::CharacterDataBinding::CharacterDataMethods;
+use dom::bindings::codegen::Bindings::DocumentBinding::DocumentMethods;
+use dom::bindings::codegen::Bindings::ElementBinding::ElementMethods;
+use dom::bindings::codegen::Bindings::NodeBinding::{NodeConstants, NodeMethods};
+use dom::bindings::codegen::Bindings::ProcessingInstructionBinding::ProcessingInstructionMethods;
use dom::bindings::codegen::InheritTypes::{CommentCast, DocumentCast, DocumentTypeCast};
use dom::bindings::codegen::InheritTypes::{ElementCast, TextCast, NodeCast, ElementDerived};
use dom::bindings::codegen::InheritTypes::{CharacterDataCast, NodeBase, NodeDerived};
use dom::bindings::codegen::InheritTypes::{ProcessingInstructionCast, EventTargetCast};
-use dom::bindings::codegen::Bindings::NodeBinding::NodeConstants;
use dom::bindings::error::{ErrorResult, Fallible, NotFound, HierarchyRequest, Syntax};
use dom::bindings::global::{GlobalRef, Window};
use dom::bindings::js::{JS, JSRef, RootedReference, Temporary, Root, OptionalUnrootable};
@@ -19,16 +24,16 @@ use dom::bindings::js::{ResultRootable, OptionalRootable};
use dom::bindings::trace::Traceable;
use dom::bindings::utils;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
-use dom::characterdata::{CharacterData, CharacterDataMethods};
+use dom::characterdata::CharacterData;
use dom::comment::Comment;
-use dom::document::{Document, DocumentMethods, DocumentHelpers, HTMLDocument, NonHTMLDocument};
+use dom::document::{Document, DocumentHelpers, HTMLDocument, NonHTMLDocument};
use dom::documentfragment::DocumentFragment;
use dom::documenttype::DocumentType;
-use dom::element::{AttributeHandlers, Element, ElementMethods, ElementTypeId};
+use dom::element::{AttributeHandlers, Element, ElementTypeId};
use dom::element::{HTMLAnchorElementTypeId, ElementHelpers};
use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::nodelist::{NodeList};
-use dom::processinginstruction::{ProcessingInstruction, ProcessingInstructionMethods};
+use dom::processinginstruction::ProcessingInstruction;
use dom::text::Text;
use dom::virtualmethods::{VirtualMethods, vtable_for};
use dom::window::Window;
@@ -1355,37 +1360,6 @@ impl Node {
}
}
-pub trait NodeMethods {
- fn NodeType(&self) -> u16;
- fn NodeName(&self) -> DOMString;
- fn GetBaseURI(&self) -> Option<DOMString>;
- fn GetOwnerDocument(&self) -> Option<Temporary<Document>>;
- fn GetParentNode(&self) -> Option<Temporary<Node>>;
- fn GetParentElement(&self) -> Option<Temporary<Element>>;
- fn HasChildNodes(&self) -> bool;
- fn ChildNodes(&self) -> Temporary<NodeList>;
- fn GetFirstChild(&self) -> Option<Temporary<Node>>;
- fn GetLastChild(&self) -> Option<Temporary<Node>>;
- fn GetPreviousSibling(&self) -> Option<Temporary<Node>>;
- fn GetNextSibling(&self) -> Option<Temporary<Node>>;
- fn GetNodeValue(&self) -> Option<DOMString>;
- fn SetNodeValue(&self, val: Option<DOMString>) -> ErrorResult;
- fn GetTextContent(&self) -> Option<DOMString>;
- fn SetTextContent(&self, value: Option<DOMString>) -> ErrorResult;
- fn InsertBefore(&self, node: &JSRef<Node>, child: Option<JSRef<Node>>) -> Fallible<Temporary<Node>>;
- fn AppendChild(&self, node: &JSRef<Node>) -> Fallible<Temporary<Node>>;
- fn ReplaceChild(&self, node: &JSRef<Node>, child: &JSRef<Node>) -> Fallible<Temporary<Node>>;
- fn RemoveChild(&self, node: &JSRef<Node>) -> Fallible<Temporary<Node>>;
- fn Normalize(&self);
- fn CloneNode(&self, deep: bool) -> Temporary<Node>;
- fn IsEqualNode(&self, maybe_node: Option<JSRef<Node>>) -> bool;
- fn CompareDocumentPosition(&self, other: &JSRef<Node>) -> u16;
- fn Contains(&self, maybe_other: Option<JSRef<Node>>) -> bool;
- fn LookupPrefix(&self, _prefix: Option<DOMString>) -> Option<DOMString>;
- fn LookupNamespaceURI(&self, _namespace: Option<DOMString>) -> Option<DOMString>;
- fn IsDefaultNamespace(&self, _namespace: Option<DOMString>) -> bool;
-}
-
impl<'a> NodeMethods for JSRef<'a, Node> {
// http://dom.spec.whatwg.org/#dom-node-nodetype
fn NodeType(&self) -> u16 {
diff --git a/src/components/script/dom/nodelist.rs b/src/components/script/dom/nodelist.rs
index ebd7a2f6ae9..61a9884e9a9 100644
--- a/src/components/script/dom/nodelist.rs
+++ b/src/components/script/dom/nodelist.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::NodeListBinding;
+use dom::bindings::codegen::Bindings::NodeListBinding::NodeListMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -44,12 +45,6 @@ impl NodeList {
}
}
-pub trait NodeListMethods {
- fn Length(&self) -> u32;
- fn Item(&self, index: u32) -> Option<Temporary<Node>>;
- fn IndexedGetter(&self, index: u32, found: &mut bool) -> Option<Temporary<Node>>;
-}
-
impl<'a> NodeListMethods for JSRef<'a, NodeList> {
fn Length(&self) -> u32 {
match self.list_type {
diff --git a/src/components/script/dom/performance.rs b/src/components/script/dom/performance.rs
index 20dbfcf590a..82b931b0c2e 100644
--- a/src/components/script/dom/performance.rs
+++ b/src/components/script/dom/performance.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::PerformanceBinding;
+use dom::bindings::codegen::Bindings::PerformanceBinding::PerformanceMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -33,11 +34,6 @@ impl Performance {
}
}
-pub trait PerformanceMethods {
- fn Timing(&self) -> Temporary<PerformanceTiming>;
- fn Now(&self) -> DOMHighResTimeStamp;
-}
-
impl<'a> PerformanceMethods for JSRef<'a, Performance> {
fn Timing(&self) -> Temporary<PerformanceTiming> {
Temporary::new(self.timing.clone())
diff --git a/src/components/script/dom/performancetiming.rs b/src/components/script/dom/performancetiming.rs
index b2cb4a0a6f8..f4331e06c0b 100644
--- a/src/components/script/dom/performancetiming.rs
+++ b/src/components/script/dom/performancetiming.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::PerformanceTimingBinding;
+use dom::bindings::codegen::Bindings::PerformanceTimingBinding::PerformanceTimingMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -33,10 +34,6 @@ impl PerformanceTiming {
}
}
-pub trait PerformanceTimingMethods {
- fn NavigationStart(&self) -> u64;
-}
-
impl<'a> PerformanceTimingMethods for JSRef<'a, PerformanceTiming> {
fn NavigationStart(&self) -> u64 {
self.navigationStart
diff --git a/src/components/script/dom/processinginstruction.rs b/src/components/script/dom/processinginstruction.rs
index db6a9a0affe..40e6ca63e04 100644
--- a/src/components/script/dom/processinginstruction.rs
+++ b/src/components/script/dom/processinginstruction.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::ProcessingInstructionBinding;
+use dom::bindings::codegen::Bindings::ProcessingInstructionBinding::ProcessingInstructionMethods;
use dom::bindings::codegen::InheritTypes::ProcessingInstructionDerived;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector};
@@ -39,10 +40,6 @@ impl ProcessingInstruction {
}
}
-pub trait ProcessingInstructionMethods {
- fn Target(&self) -> DOMString;
-}
-
impl<'a> ProcessingInstructionMethods for JSRef<'a, ProcessingInstruction> {
fn Target(&self) -> DOMString {
self.target.clone()
diff --git a/src/components/script/dom/progressevent.rs b/src/components/script/dom/progressevent.rs
index a9e380ba989..d001785984f 100644
--- a/src/components/script/dom/progressevent.rs
+++ b/src/components/script/dom/progressevent.rs
@@ -2,13 +2,15 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
use dom::bindings::codegen::Bindings::ProgressEventBinding;
+use dom::bindings::codegen::Bindings::ProgressEventBinding::ProgressEventMethods;
use dom::bindings::codegen::InheritTypes::{EventCast, ProgressEventDerived};
use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
-use dom::event::{Event, EventMethods, ProgressEventTypeId};
+use dom::event::{Event, ProgressEventTypeId};
use servo_util::str::DOMString;
#[deriving(Encodable)]
@@ -54,12 +56,6 @@ impl ProgressEvent {
}
}
-pub trait ProgressEventMethods {
- fn LengthComputable(&self) -> bool;
- fn Loaded(&self) -> u64;
- fn Total(&self) -> u64;
-}
-
impl<'a> ProgressEventMethods for JSRef<'a, ProgressEvent> {
fn LengthComputable(&self) -> bool {
self.length_computable
diff --git a/src/components/script/dom/screen.rs b/src/components/script/dom/screen.rs
index 34eb8f55461..0e184d94ec3 100644
--- a/src/components/script/dom/screen.rs
+++ b/src/components/script/dom/screen.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::ScreenBinding;
+use dom::bindings::codegen::Bindings::ScreenBinding::ScreenMethods;
use dom::bindings::global::Window;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
@@ -27,11 +28,6 @@ impl Screen {
}
}
-pub trait ScreenMethods {
- fn ColorDepth(&self) -> u32;
- fn PixelDepth(&self) -> u32;
-}
-
impl<'a> ScreenMethods for JSRef<'a, Screen> {
fn ColorDepth(&self) -> u32 {
24
diff --git a/src/components/script/dom/testbinding.rs b/src/components/script/dom/testbinding.rs
index 5747b85ced5..b5d83fac620 100644
--- a/src/components/script/dom/testbinding.rs
+++ b/src/components/script/dom/testbinding.rs
@@ -2,6 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+use dom::bindings::codegen::Bindings::TestBindingBinding::TestBindingMethods;
use dom::bindings::codegen::Bindings::TestBindingBinding::TestEnum;
use dom::bindings::codegen::Bindings::TestBindingBinding::TestEnumValues::_empty;
use dom::bindings::codegen::UnionTypes::BlobOrString::BlobOrString;
@@ -23,7 +24,7 @@ pub struct TestBinding {
global: GlobalField,
}
-pub trait TestBindingMethods {
+impl<'a> TestBindingMethods for JSRef<'a, TestBinding> {
fn BooleanAttribute(&self) -> bool { false }
fn SetBooleanAttribute(&self, _: bool) {}
fn ByteAttribute(&self) -> i8 { 0 }
@@ -52,7 +53,10 @@ pub trait TestBindingMethods {
fn SetByteStringAttribute(&self, _: ByteString) {}
fn EnumAttribute(&self) -> TestEnum { _empty }
fn SetEnumAttribute(&self, _: TestEnum) {}
- fn InterfaceAttribute(&self) -> Temporary<Blob>;
+ fn InterfaceAttribute(&self) -> Temporary<Blob> {
+ let global = self.global.root();
+ Blob::new(&global.root_ref())
+ }
fn SetInterfaceAttribute(&self, _: &JSRef<Blob>) {}
fn UnionAttribute(&self) -> HTMLElementOrLong { eLong(0) }
fn SetUnionAttribute(&self, _: HTMLElementOrLong) {}
@@ -88,7 +92,10 @@ pub trait TestBindingMethods {
fn GetStringAttributeNullable(&self) -> Option<DOMString> { Some("".to_string()) }
fn SetStringAttributeNullable(&self, _: Option<DOMString>) {}
fn GetEnumAttributeNullable(&self) -> Option<TestEnum> { Some(_empty) }
- fn GetInterfaceAttributeNullable(&self) -> Option<Temporary<Blob>>;
+ fn GetInterfaceAttributeNullable(&self) -> Option<Temporary<Blob>> {
+ let global = self.global.root();
+ Some(Blob::new(&global.root_ref()))
+ }
fn SetInterfaceAttributeNullable(&self, _: Option<JSRef<Blob>>) {}
fn GetUnionAttributeNullable(&self) -> Option<HTMLElementOrLong> { Some(eLong(0)) }
fn SetUnionAttributeNullable(&self, _: Option<HTMLElementOrLong>) {}
@@ -109,7 +116,10 @@ pub trait TestBindingMethods {
fn ReceiveString(&self) -> DOMString { "".to_string() }
fn ReceiveByteString(&self) -> ByteString { ByteString::new(vec!()) }
fn ReceiveEnum(&self) -> TestEnum { _empty }
- fn ReceiveInterface(&self) -> Temporary<Blob>;
+ fn ReceiveInterface(&self) -> Temporary<Blob> {
+ let global = self.global.root();
+ Blob::new(&global.root_ref())
+ }
fn ReceiveAny(&self, _: *mut JSContext) -> JSVal { NullValue() }
fn ReceiveUnion(&self) -> HTMLElementOrLong { eLong(0) }
fn ReceiveUnion2(&self) -> EventOrString { eString("".to_string()) }
@@ -128,7 +138,10 @@ pub trait TestBindingMethods {
fn ReceiveNullableString(&self) -> Option<DOMString> { Some("".to_string()) }
fn ReceiveNullableByteString(&self) -> Option<ByteString> { Some(ByteString::new(vec!())) }
fn ReceiveNullableEnum(&self) -> Option<TestEnum> { Some(_empty) }
- fn ReceiveNullableInterface(&self) -> Option<Temporary<Blob>>;
+ fn ReceiveNullableInterface(&self) -> Option<Temporary<Blob>> {
+ let global = self.global.root();
+ Some(Blob::new(&global.root_ref()))
+ }
fn ReceiveNullableUnion(&self) -> Option<HTMLElementOrLong> { Some(eLong(0)) }
fn ReceiveNullableUnion2(&self) -> Option<EventOrString> { Some(eString("".to_string())) }
@@ -273,25 +286,6 @@ pub trait TestBindingMethods {
fn PassVariadicAny(&self, _: *mut JSContext, _: Vec<JSVal>) {}
}
-impl<'a> TestBindingMethods for JSRef<'a, TestBinding> {
- fn InterfaceAttribute(&self) -> Temporary<Blob> {
- let global = self.global.root();
- Blob::new(&global.root_ref())
- }
- fn GetInterfaceAttributeNullable(&self) -> Option<Temporary<Blob>> {
- let global = self.global.root();
- Some(Blob::new(&global.root_ref()))
- }
- fn ReceiveInterface(&self) -> Temporary<Blob> {
- let global = self.global.root();
- Blob::new(&global.root_ref())
- }
- fn ReceiveNullableInterface(&self) -> Option<Temporary<Blob>> {
- let global = self.global.root();
- Some(Blob::new(&global.root_ref()))
- }
-}
-
impl TestBinding {
pub fn BooleanAttributeStatic() -> bool { false }
pub fn SetBooleanAttributeStatic(_: bool) {}
diff --git a/src/components/script/dom/text.rs b/src/components/script/dom/text.rs
index bc05fcb7e39..1bbd25cb8ff 100644
--- a/src/components/script/dom/text.rs
+++ b/src/components/script/dom/text.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::TextBinding;
+use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
use dom::bindings::codegen::InheritTypes::TextDerived;
use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef;
@@ -12,7 +13,6 @@ use dom::characterdata::CharacterData;
use dom::document::Document;
use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::node::{Node, TextNodeTypeId};
-use dom::window::WindowMethods;
use servo_util::str::DOMString;
/// An HTML text node.
@@ -45,9 +45,6 @@ impl Text {
}
}
-pub trait TextMethods {
-}
-
impl Reflectable for Text {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.characterdata.reflector()
diff --git a/src/components/script/dom/uievent.rs b/src/components/script/dom/uievent.rs
index 0718d60fe68..c91f0fdb787 100644
--- a/src/components/script/dom/uievent.rs
+++ b/src/components/script/dom/uievent.rs
@@ -2,14 +2,16 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
use dom::bindings::codegen::Bindings::UIEventBinding;
+use dom::bindings::codegen::Bindings::UIEventBinding::UIEventMethods;
use dom::bindings::codegen::InheritTypes::{EventCast, UIEventDerived};
use dom::bindings::error::Fallible;
use dom::bindings::global::{GlobalRef, Window};
use dom::bindings::js::{JS, JSRef, RootedReference, Temporary, OptionalSettable};
use dom::bindings::trace::Traceable;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
-use dom::event::{Event, EventMethods, EventTypeId, UIEventTypeId};
+use dom::event::{Event, EventTypeId, UIEventTypeId};
use dom::window::Window;
use servo_util::str::DOMString;
@@ -64,17 +66,6 @@ impl UIEvent {
}
}
-pub trait UIEventMethods {
- fn GetView(&self) -> Option<Temporary<Window>>;
- fn Detail(&self) -> i32;
- fn InitUIEvent(&self,
- type_: DOMString,
- can_bubble: bool,
- cancelable: bool,
- view: Option<JSRef<Window>>,
- detail: i32);
-}
-
impl<'a> UIEventMethods for JSRef<'a, UIEvent> {
fn GetView(&self) -> Option<Temporary<Window>> {
self.view.get().map(|view| Temporary::new(view))
diff --git a/src/components/script/dom/urlsearchparams.rs b/src/components/script/dom/urlsearchparams.rs
index 1baebd376ac..52e48628911 100644
--- a/src/components/script/dom/urlsearchparams.rs
+++ b/src/components/script/dom/urlsearchparams.rs
@@ -2,18 +2,22 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use std::collections::hashmap::HashMap;
use dom::bindings::codegen::Bindings::URLSearchParamsBinding;
+use dom::bindings::codegen::Bindings::URLSearchParamsBinding::URLSearchParamsMethods;
use dom::bindings::codegen::UnionTypes::StringOrURLSearchParams::{StringOrURLSearchParams, eURLSearchParams, eString};
use dom::bindings::error::{Fallible};
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::trace::Traceable;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
+
+use servo_util::str::DOMString;
+
use encoding::all::UTF_8;
use encoding::types::{Encoding, EncodeReplace};
-use servo_util::str::DOMString;
+
use std::cell::RefCell;
+use std::collections::hashmap::HashMap;
use std::num::ToStrRadix;
use std::ascii::OwnedStrAsciiExt;
@@ -55,14 +59,6 @@ impl URLSearchParams {
}
}
-pub trait URLSearchParamsMethods {
- fn Append(&self, name: DOMString, value: DOMString);
- fn Delete(&self, name: DOMString);
- fn Get(&self, name: DOMString) -> Option<DOMString>;
- fn Has(&self, name: DOMString) -> bool;
- fn Set(&self, name: DOMString, value: DOMString);
-}
-
impl<'a> URLSearchParamsMethods for JSRef<'a, URLSearchParams> {
fn Append(&self, name: DOMString, value: DOMString) {
self.data.deref().borrow_mut().insert_or_update_with(name, vec!(value.clone()),
diff --git a/src/components/script/dom/validitystate.rs b/src/components/script/dom/validitystate.rs
index a8d0311f047..c2901009c41 100644
--- a/src/components/script/dom/validitystate.rs
+++ b/src/components/script/dom/validitystate.rs
@@ -29,9 +29,6 @@ impl ValidityState {
}
}
-pub trait ValidityStateMethods {
-}
-
impl Reflectable for ValidityState {
fn reflector<'a>(&'a self) -> &'a Reflector {
&self.reflector_
diff --git a/src/components/script/dom/window.rs b/src/components/script/dom/window.rs
index e5f867c436b..e620a8c40b0 100644
--- a/src/components/script/dom/window.rs
+++ b/src/components/script/dom/window.rs
@@ -4,6 +4,7 @@
use dom::bindings::codegen::Bindings::EventHandlerBinding::{OnErrorEventHandlerNonNull, EventHandlerNonNull};
use dom::bindings::codegen::Bindings::WindowBinding;
+use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
use dom::bindings::codegen::InheritTypes::EventTargetCast;
use dom::bindings::global;
use dom::bindings::js::{JS, JSRef, Temporary, OptionalSettable};
@@ -119,33 +120,6 @@ pub struct TimerData {
pub funval: Traceable<JSVal>,
}
-pub trait WindowMethods {
- fn Alert(&self, s: DOMString);
- fn Close(&self);
- fn Document(&self) -> Temporary<Document>;
- fn Location(&self) -> Temporary<Location>;
- fn Console(&self) -> Temporary<Console>;
- fn Navigator(&self) -> Temporary<Navigator>;
- fn SetTimeout(&self, _cx: *mut JSContext, callback: JSVal, timeout: i32) -> i32;
- fn ClearTimeout(&self, handle: i32);
- fn SetInterval(&self, _cx: *mut JSContext, callback: JSVal, timeout: i32) -> i32;
- fn ClearInterval(&self, handle: i32);
- fn Window(&self) -> Temporary<Window>;
- fn Self(&self) -> Temporary<Window>;
- fn Performance(&self) -> Temporary<Performance>;
- fn GetOnclick(&self) -> Option<EventHandlerNonNull>;
- fn SetOnclick(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnload(&self) -> Option<EventHandlerNonNull>;
- fn SetOnload(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnunload(&self) -> Option<EventHandlerNonNull>;
- fn SetOnunload(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnerror(&self) -> Option<OnErrorEventHandlerNonNull>;
- fn SetOnerror(&self, listener: Option<OnErrorEventHandlerNonNull>);
- fn Screen(&self) -> Temporary<Screen>;
- fn Debug(&self, message: DOMString);
- fn Gc(&self);
-}
-
impl<'a> WindowMethods for JSRef<'a, Window> {
fn Alert(&self, s: DOMString) {
// Right now, just print to the console
diff --git a/src/components/script/dom/worker.rs b/src/components/script/dom/worker.rs
index 74768594cdb..88a9b10307a 100644
--- a/src/components/script/dom/worker.rs
+++ b/src/components/script/dom/worker.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::WorkerBinding;
+use dom::bindings::codegen::Bindings::WorkerBinding::WorkerMethods;
use dom::bindings::error::{Fallible, Syntax};
use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary};
@@ -51,10 +52,6 @@ impl Worker {
}
}
-pub trait WorkerMethods {
- fn PostMessage(&self, message: DOMString);
-}
-
impl<'a> WorkerMethods for JSRef<'a, Worker> {
fn PostMessage(&self, message: DOMString) {
self.sender.send(message);
diff --git a/src/components/script/dom/workerglobalscope.rs b/src/components/script/dom/workerglobalscope.rs
index 4ce8a05247c..3123c05338d 100644
--- a/src/components/script/dom/workerglobalscope.rs
+++ b/src/components/script/dom/workerglobalscope.rs
@@ -2,6 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+use dom::bindings::codegen::Bindings::WorkerGlobalScopeBinding::WorkerGlobalScopeMethods;
use dom::bindings::trace::Untraceable;
use dom::bindings::global;
use dom::bindings::js::{JS, JSRef, Temporary, OptionalSettable};
@@ -67,11 +68,6 @@ impl WorkerGlobalScope {
}
}
-pub trait WorkerGlobalScopeMethods {
- fn Self(&self) -> Temporary<WorkerGlobalScope>;
- fn Console(&self) -> Temporary<Console>;
-}
-
impl<'a> WorkerGlobalScopeMethods for JSRef<'a, WorkerGlobalScope> {
fn Self(&self) -> Temporary<WorkerGlobalScope> {
Temporary::from_rooted(self)
diff --git a/src/components/script/dom/xmlhttprequest.rs b/src/components/script/dom/xmlhttprequest.rs
index 41979a739f1..a3a21046bd6 100644
--- a/src/components/script/dom/xmlhttprequest.rs
+++ b/src/components/script/dom/xmlhttprequest.rs
@@ -4,6 +4,7 @@
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
use dom::bindings::codegen::Bindings::XMLHttpRequestBinding;
+use dom::bindings::codegen::Bindings::XMLHttpRequestBinding::XMLHttpRequestMethods;
use dom::bindings::codegen::Bindings::XMLHttpRequestBinding::XMLHttpRequestResponseType;
use dom::bindings::codegen::Bindings::XMLHttpRequestBinding::XMLHttpRequestResponseTypeValues::{_empty, Document, Json, Text};
use dom::bindings::codegen::InheritTypes::{EventCast, EventTargetCast, XMLHttpRequestDerived};
@@ -257,33 +258,6 @@ impl XMLHttpRequest {
}
}
-pub trait XMLHttpRequestMethods {
- fn GetOnreadystatechange(&self) -> Option<EventHandlerNonNull>;
- fn SetOnreadystatechange(&self, listener: Option<EventHandlerNonNull>);
- fn ReadyState(&self) -> u16;
- fn Open(&self, _method: ByteString, _url: DOMString) -> ErrorResult;
- fn Open_(&self, _method: ByteString, _url: DOMString, _async: bool,
- _username: Option<DOMString>, _password: Option<DOMString>) -> ErrorResult;
- fn SetRequestHeader(&self, name: ByteString, mut value: ByteString) -> ErrorResult;
- fn Timeout(&self) -> u32;
- fn SetTimeout(&self, timeout: u32) -> ErrorResult;
- fn WithCredentials(&self) -> bool;
- fn SetWithCredentials(&self, with_credentials: bool);
- fn Upload(&self) -> Temporary<XMLHttpRequestUpload>;
- fn Send(&self, data: Option<SendParam>) -> ErrorResult;
- fn Abort(&self);
- fn ResponseURL(&self) -> DOMString;
- fn Status(&self) -> u16;
- fn StatusText(&self) -> ByteString;
- fn GetResponseHeader(&self, name: ByteString) -> Option<ByteString>;
- fn GetAllResponseHeaders(&self) -> ByteString;
- fn ResponseType(&self) -> XMLHttpRequestResponseType;
- fn SetResponseType(&self, response_type: XMLHttpRequestResponseType) -> ErrorResult;
- fn Response(&self, _cx: *mut JSContext) -> JSVal;
- fn GetResponseText(&self) -> Fallible<DOMString>;
- fn GetResponseXML(&self) -> Option<Temporary<Document>>;
-}
-
impl<'a> XMLHttpRequestMethods for JSRef<'a, XMLHttpRequest> {
fn GetOnreadystatechange(&self) -> Option<EventHandlerNonNull> {
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
diff --git a/src/components/script/dom/xmlhttprequesteventtarget.rs b/src/components/script/dom/xmlhttprequesteventtarget.rs
index 1881a597d76..06c42fbdc4e 100644
--- a/src/components/script/dom/xmlhttprequesteventtarget.rs
+++ b/src/components/script/dom/xmlhttprequesteventtarget.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
+use dom::bindings::codegen::Bindings::XMLHttpRequestEventTargetBinding::XMLHttpRequestEventTargetMethods;
use dom::bindings::codegen::InheritTypes::EventTargetCast;
use dom::bindings::codegen::InheritTypes::XMLHttpRequestEventTargetDerived;
use dom::bindings::js::JSRef;
@@ -38,23 +39,6 @@ impl Reflectable for XMLHttpRequestEventTarget {
}
}
-pub trait XMLHttpRequestEventTargetMethods {
- fn GetOnloadstart(&self) -> Option<EventHandlerNonNull>;
- fn SetOnloadstart(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnprogress(&self) -> Option<EventHandlerNonNull>;
- fn SetOnprogress(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnabort(&self) -> Option<EventHandlerNonNull>;
- fn SetOnabort(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnerror(&self) -> Option<EventHandlerNonNull>;
- fn SetOnerror(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnload(&self) -> Option<EventHandlerNonNull>;
- fn SetOnload(&self, listener: Option<EventHandlerNonNull>);
- fn GetOntimeout(&self) -> Option<EventHandlerNonNull>;
- fn SetOntimeout(&self, listener: Option<EventHandlerNonNull>);
- fn GetOnloadend(&self) -> Option<EventHandlerNonNull>;
- fn SetOnloadend(&self, listener: Option<EventHandlerNonNull>);
-}
-
impl<'a> XMLHttpRequestEventTargetMethods for JSRef<'a, XMLHttpRequestEventTarget> {
fn GetOnloadstart(&self) -> Option<EventHandlerNonNull> {
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);
diff --git a/src/components/script/dom/xmlhttprequestupload.rs b/src/components/script/dom/xmlhttprequestupload.rs
index cf444d6c70b..477d382bffe 100644
--- a/src/components/script/dom/xmlhttprequestupload.rs
+++ b/src/components/script/dom/xmlhttprequestupload.rs
@@ -39,6 +39,3 @@ impl XMLHttpRequestUploadDerived for EventTarget {
self.type_id == XMLHttpRequestTargetTypeId(XMLHttpRequestUploadTypeId)
}
}
-
-pub trait XMLHttpRequestUploadMethods {
-}
diff --git a/src/components/script/html/hubbub_html_parser.rs b/src/components/script/html/hubbub_html_parser.rs
index 8b7ee5440b7..7c45f2dfe55 100644
--- a/src/components/script/html/hubbub_html_parser.rs
+++ b/src/components/script/html/hubbub_html_parser.rs
@@ -2,7 +2,8 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use dom::attr::AttrMethods;
+use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods;
+use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods;
use dom::bindings::codegen::InheritTypes::{NodeBase, NodeCast, TextCast, ElementCast};
use dom::bindings::js::{JS, JSRef, Temporary, OptionalRootable, Root};
use dom::bindings::utils::Reflectable;
@@ -11,7 +12,7 @@ use dom::element::{AttributeHandlers, HTMLLinkElementTypeId};
use dom::htmlelement::HTMLElement;
use dom::htmlheadingelement::{Heading1, Heading2, Heading3, Heading4, Heading5, Heading6};
use dom::htmlformelement::HTMLFormElement;
-use dom::node::{ElementNodeTypeId, NodeHelpers, NodeMethods};
+use dom::node::{ElementNodeTypeId, NodeHelpers};
use dom::types::*;
use html::cssparse::{StylesheetProvenance, UrlProvenance, spawn_css_parser};
use page::Page;
diff --git a/src/components/script/page.rs b/src/components/script/page.rs
index 98d074787da..8543c887da7 100644
--- a/src/components/script/page.rs
+++ b/src/components/script/page.rs
@@ -2,12 +2,13 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+use dom::bindings::codegen::Bindings::DocumentBinding::DocumentMethods;
use dom::bindings::codegen::InheritTypes::{NodeCast, ElementCast};
use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::js::OptionalRootable;
use dom::bindings::trace::{Traceable, Untraceable};
use dom::bindings::utils::GlobalStaticData;
-use dom::document::{Document, DocumentMethods, DocumentHelpers};
+use dom::document::{Document, DocumentHelpers};
use dom::element::{Element, AttributeHandlers};
use dom::node::{Node, NodeHelpers};
use dom::window::Window;