Call the generated rather than the hand-written traits (fixes #2936).

This commit is contained in:
Ms2ger 2014-07-27 20:22:13 +02:00
parent 38a658d561
commit 944d8b00b0
116 changed files with 126 additions and 765 deletions

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::AttrBinding; use dom::bindings::codegen::Bindings::AttrBinding;
use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods;
use dom::bindings::codegen::InheritTypes::NodeCast; use dom::bindings::codegen::InheritTypes::NodeCast;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary}; 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> { impl<'a> AttrMethods for JSRef<'a, Attr> {
fn LocalName(&self) -> DOMString { fn LocalName(&self) -> DOMString {
self.local_name.clone() self.local_name.clone()

View file

@ -4,6 +4,7 @@
use dom::attr::Attr; use dom::attr::Attr;
use dom::bindings::codegen::Bindings::AttrListBinding; use dom::bindings::codegen::Bindings::AttrListBinding;
use dom::bindings::codegen::Bindings::AttrListBinding::AttrListMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary}; use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> AttrListMethods for JSRef<'a, AttrList> {
fn Length(&self) -> u32 { fn Length(&self) -> u32 {
self.owner.root().attrs.borrow().len() as u32 self.owner.root().attrs.borrow().len() as u32

View file

@ -1341,10 +1341,6 @@ class CGImports(CGWrapper):
'dead_code', '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 = ['#![allow(%s)]' % ','.join(ignored_warnings)]
statements.extend('use %s;' % i for i in sorted(imports)) statements.extend('use %s;' % i for i in sorted(imports))

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding; use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding;
use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding::CanvasRenderingContext2DMethods;
use dom::bindings::global::{GlobalRef, GlobalField}; use dom::bindings::global::{GlobalRef, GlobalField};
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::trace::Untraceable; 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> { impl<'a> CanvasRenderingContext2DMethods for JSRef<'a, CanvasRenderingContext2D> {
fn FillRect(&self, x: f64, y: f64, width: f64, height: f64) { 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)); let rect = Rect(Point2D(x as f32, y as f32), Size2D(width as f32, height as f32));

View file

@ -4,6 +4,7 @@
//! DOM bindings for `CharacterData`. //! DOM bindings for `CharacterData`.
use dom::bindings::codegen::Bindings::CharacterDataBinding::CharacterDataMethods;
use dom::bindings::codegen::InheritTypes::{CharacterDataDerived, NodeCast}; use dom::bindings::codegen::InheritTypes::{CharacterDataDerived, NodeCast};
use dom::bindings::error::{Fallible, ErrorResult, IndexSize}; use dom::bindings::error::{Fallible, ErrorResult, IndexSize};
use dom::bindings::js::JSRef; 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> { impl<'a> CharacterDataMethods for JSRef<'a, CharacterData> {
fn Data(&self) -> DOMString { fn Data(&self) -> DOMString {
self.data.deref().borrow().clone() self.data.deref().borrow().clone()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::ClientRectBinding; use dom::bindings::codegen::Bindings::ClientRectBinding;
use dom::bindings::codegen::Bindings::ClientRectBinding::ClientRectMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary}; use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> ClientRectMethods for JSRef<'a, ClientRect> {
fn Top(&self) -> f32 { fn Top(&self) -> f32 {
self.top self.top

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::ClientRectListBinding; use dom::bindings::codegen::Bindings::ClientRectListBinding;
use dom::bindings::codegen::Bindings::ClientRectListBinding::ClientRectListMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary}; use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> ClientRectListMethods for JSRef<'a, ClientRectList> {
fn Length(&self) -> u32 { fn Length(&self) -> u32 {
self.rects.len() as u32 self.rects.len() as u32

View file

@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * 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/. */ * 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::CommentBinding;
use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods;
use dom::bindings::codegen::InheritTypes::CommentDerived;
use dom::bindings::error::Fallible; use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef; use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
@ -12,7 +13,6 @@ use dom::characterdata::CharacterData;
use dom::document::Document; use dom::document::Document;
use dom::eventtarget::{EventTarget, NodeTargetTypeId}; use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::node::{CommentNodeTypeId, Node}; use dom::node::{CommentNodeTypeId, Node};
use dom::window::WindowMethods;
use servo_util::str::DOMString; use servo_util::str::DOMString;
/// An HTML comment. /// An HTML comment.

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::ConsoleBinding; use dom::bindings::codegen::Bindings::ConsoleBinding;
use dom::bindings::codegen::Bindings::ConsoleBinding::ConsoleMethods;
use dom::bindings::global::GlobalRef; use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> ConsoleMethods for JSRef<'a, Console> {
fn Log(&self, message: DOMString) { fn Log(&self, message: DOMString) {
println!("{:s}", message); println!("{:s}", message);

View file

@ -3,13 +3,15 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::CustomEventBinding; 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::codegen::InheritTypes::{EventCast, CustomEventDerived};
use dom::bindings::error::Fallible; use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef; use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::trace::Traceable; use dom::bindings::trace::Traceable;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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::jsapi::JSContext;
use js::jsval::{JSVal, NullValue}; use js::jsval::{JSVal, NullValue};
use servo_util::str::DOMString; 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 { impl CustomEvent {
pub fn new_inherited(type_id: EventTypeId) -> CustomEvent { pub fn new_inherited(type_id: EventTypeId) -> CustomEvent {
CustomEvent { CustomEvent {

View file

@ -3,7 +3,10 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::DocumentBinding; 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::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::{DocumentDerived, EventCast, HTMLElementCast};
use dom::bindings::codegen::InheritTypes::{HTMLHeadElementCast, TextCast, ElementCast}; use dom::bindings::codegen::InheritTypes::{HTMLHeadElementCast, TextCast, ElementCast};
use dom::bindings::codegen::InheritTypes::{DocumentTypeCast, HTMLHtmlElementCast, NodeCast}; use dom::bindings::codegen::InheritTypes::{DocumentTypeCast, HTMLHtmlElementCast, NodeCast};
@ -32,13 +35,13 @@ use dom::htmlheadelement::HTMLHeadElement;
use dom::htmlhtmlelement::HTMLHtmlElement; use dom::htmlhtmlelement::HTMLHtmlElement;
use dom::htmltitleelement::HTMLTitleElement; use dom::htmltitleelement::HTMLTitleElement;
use dom::mouseevent::MouseEvent; 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::node::{CloneChildren, DoNotCloneChildren};
use dom::nodelist::NodeList; use dom::nodelist::NodeList;
use dom::text::Text; use dom::text::Text;
use dom::processinginstruction::ProcessingInstruction; use dom::processinginstruction::ProcessingInstruction;
use dom::uievent::UIEvent; use dom::uievent::UIEvent;
use dom::window::{Window, WindowMethods, WindowHelpers}; use dom::window::{Window, WindowHelpers};
use dom::location::Location; use dom::location::Location;
use html::hubbub_html_parser::build_element_from_tag; use html::hubbub_html_parser::build_element_from_tag;
use hubbub::hubbub::{QuirksMode, NoQuirks, LimitedQuirks, FullQuirks}; 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> { impl<'a> DocumentMethods for JSRef<'a, Document> {
// http://dom.spec.whatwg.org/#dom-document-implementation // http://dom.spec.whatwg.org/#dom-document-implementation
fn Implementation(&self) -> Temporary<DOMImplementation> { fn Implementation(&self) -> Temporary<DOMImplementation> {

View file

@ -2,8 +2,10 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * 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/. */ * 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;
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::js::{JSRef, Temporary};
use dom::bindings::error::Fallible; use dom::bindings::error::Fallible;
use dom::bindings::global::GlobalRef; use dom::bindings::global::GlobalRef;
@ -14,7 +16,6 @@ use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::htmlcollection::HTMLCollection; use dom::htmlcollection::HTMLCollection;
use dom::node::{DocumentFragmentNodeTypeId, Node, NodeHelpers, window_from_node}; use dom::node::{DocumentFragmentNodeTypeId, Node, NodeHelpers, window_from_node};
use dom::nodelist::NodeList; use dom::nodelist::NodeList;
use dom::window::WindowMethods;
use servo_util::str::DOMString; use servo_util::str::DOMString;
#[deriving(Encodable)] #[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> { impl<'a> DocumentFragmentMethods for JSRef<'a, DocumentFragment> {
// http://dom.spec.whatwg.org/#dom-parentnode-children // http://dom.spec.whatwg.org/#dom-parentnode-children
fn Children(&self) -> Temporary<HTMLCollection> { fn Children(&self) -> Temporary<HTMLCollection> {

View file

@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * 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/. */ * 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;
use dom::bindings::codegen::Bindings::DocumentTypeBinding::DocumentTypeMethods;
use dom::bindings::codegen::InheritTypes::{DocumentTypeDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector}; use dom::bindings::utils::{Reflectable, Reflector};
use dom::document::Document; 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> { impl<'a> DocumentTypeMethods for JSRef<'a, DocumentType> {
fn Name(&self) -> DOMString { fn Name(&self) -> DOMString {
self.name.clone() self.name.clone()

View file

@ -4,6 +4,7 @@
use dom::bindings::codegen::Bindings::DOMExceptionBinding; use dom::bindings::codegen::Bindings::DOMExceptionBinding;
use dom::bindings::codegen::Bindings::DOMExceptionBinding::DOMExceptionConstants; use dom::bindings::codegen::Bindings::DOMExceptionBinding::DOMExceptionConstants;
use dom::bindings::codegen::Bindings::DOMExceptionBinding::DOMExceptionMethods;
use dom::bindings::error; use dom::bindings::error;
use dom::bindings::error::Error; use dom::bindings::error::Error;
use dom::bindings::global::GlobalRef; 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> { impl<'a> DOMExceptionMethods for JSRef<'a, DOMException> {
// http://dom.spec.whatwg.org/#dom-domexception-code // http://dom.spec.whatwg.org/#dom-domexception-code
fn Code(&self) -> u16 { fn Code(&self) -> u16 {

View file

@ -2,20 +2,23 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * 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/. */ * 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;
use dom::bindings::codegen::Bindings::DOMImplementationBinding::DOMImplementationMethods;
use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods;
use dom::bindings::codegen::InheritTypes::NodeCast; use dom::bindings::codegen::InheritTypes::NodeCast;
use dom::bindings::error::{Fallible, InvalidCharacter, NamespaceError}; use dom::bindings::error::{Fallible, InvalidCharacter, NamespaceError};
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Root, Temporary, OptionalRootable}; use dom::bindings::js::{JS, JSRef, Root, Temporary, OptionalRootable};
use dom::bindings::utils::{Reflector, Reflectable, reflect_dom_object}; use dom::bindings::utils::{Reflector, Reflectable, reflect_dom_object};
use dom::bindings::utils::{QName, Name, InvalidXMLName, xml_name_type}; 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::documenttype::DocumentType;
use dom::htmlbodyelement::HTMLBodyElement; use dom::htmlbodyelement::HTMLBodyElement;
use dom::htmlheadelement::HTMLHeadElement; use dom::htmlheadelement::HTMLHeadElement;
use dom::htmlhtmlelement::HTMLHtmlElement; use dom::htmlhtmlelement::HTMLHtmlElement;
use dom::htmltitleelement::HTMLTitleElement; use dom::htmltitleelement::HTMLTitleElement;
use dom::node::{Node, NodeMethods}; use dom::node::Node;
use dom::text::Text; use dom::text::Text;
use servo_util::str::DOMString; 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 // http://dom.spec.whatwg.org/#domimplementation
impl<'a> DOMImplementationMethods for JSRef<'a, DOMImplementation> { impl<'a> DOMImplementationMethods for JSRef<'a, DOMImplementation> {
// http://dom.spec.whatwg.org/#dom-domimplementation-createdocumenttype // http://dom.spec.whatwg.org/#dom-domimplementation-createdocumenttype

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::DOMParserBinding; 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::codegen::Bindings::DOMParserBinding::SupportedTypeValues::{Text_html, Text_xml};
use dom::bindings::error::{Fallible, FailureUnknown}; use dom::bindings::error::{Fallible, FailureUnknown};
use dom::bindings::global::{GlobalRef, Window}; 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> { impl<'a> DOMParserMethods for JSRef<'a, DOMParser> {
fn ParseFromString(&self, fn ParseFromString(&self,
_s: DOMString, _s: DOMString,

View file

@ -4,6 +4,7 @@
use dom::attr::{Attr, TokenListAttrValue}; use dom::attr::{Attr, TokenListAttrValue};
use dom::bindings::codegen::Bindings::DOMTokenListBinding; use dom::bindings::codegen::Bindings::DOMTokenListBinding;
use dom::bindings::codegen::Bindings::DOMTokenListBinding::DOMTokenListMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary, OptionalRootable}; use dom::bindings::js::{JS, JSRef, Temporary, OptionalRootable};
use dom::bindings::utils::{Reflector, Reflectable, reflect_dom_object}; 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 // http://dom.spec.whatwg.org/#domtokenlist
impl<'a> DOMTokenListMethods for JSRef<'a, DOMTokenList> { impl<'a> DOMTokenListMethods for JSRef<'a, DOMTokenList> {
// http://dom.spec.whatwg.org/#dom-domtokenlist-length // http://dom.spec.whatwg.org/#dom-domtokenlist-length

View file

@ -5,10 +5,12 @@
//! Element nodes. //! Element nodes.
use cssparser::tokenize; 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::attr::{AttrValue, StringAttrValue, UIntAttrValue};
use dom::attrlist::AttrList; use dom::attrlist::AttrList;
use dom::bindings::codegen::Bindings::AttrBinding::AttrMethods;
use dom::bindings::codegen::Bindings::ElementBinding; use dom::bindings::codegen::Bindings::ElementBinding;
use dom::bindings::codegen::Bindings::ElementBinding::ElementMethods;
use dom::bindings::codegen::InheritTypes::{ElementDerived, NodeCast}; use dom::bindings::codegen::InheritTypes::{ElementDerived, NodeCast};
use dom::bindings::js::{JS, JSRef, Temporary, TemporaryPushable}; use dom::bindings::js::{JS, JSRef, Temporary, TemporaryPushable};
use dom::bindings::js::{OptionalSettable, OptionalRootable, Root}; 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> { impl<'a> ElementMethods for JSRef<'a, Element> {
// http://dom.spec.whatwg.org/#dom-element-namespaceuri // http://dom.spec.whatwg.org/#dom-element-namespaceuri
fn NamespaceURI(&self) -> DOMString { fn NamespaceURI(&self) -> DOMString {

View file

@ -3,7 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::EventBinding; 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::error::Fallible;
use dom::bindings::global::GlobalRef; use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JS, JSRef, Temporary}; 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> { impl<'a> EventMethods for JSRef<'a, Event> {
fn EventPhase(&self) -> u16 { fn EventPhase(&self) -> u16 {
self.phase.deref().get() as u16 self.phase.deref().get() as u16

View file

@ -3,10 +3,11 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::callback::ReportExceptions; use dom::bindings::callback::ReportExceptions;
use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
use dom::bindings::codegen::InheritTypes::{EventTargetCast, NodeCast, NodeDerived}; use dom::bindings::codegen::InheritTypes::{EventTargetCast, NodeCast, NodeDerived};
use dom::bindings::js::{JS, JSRef, OptionalSettable, OptionalRootable, Root}; use dom::bindings::js::{JS, JSRef, OptionalSettable, OptionalRootable, Root};
use dom::eventtarget::{Capturing, Bubbling, EventTarget}; 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::node::{Node, NodeHelpers};
use dom::virtualmethods::vtable_for; use dom::virtualmethods::vtable_for;

View file

@ -5,6 +5,7 @@
use dom::bindings::callback::CallbackContainer; use dom::bindings::callback::CallbackContainer;
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull; use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
use dom::bindings::codegen::Bindings::EventListenerBinding::EventListener; 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::error::{Fallible, InvalidState, report_pending_exception};
use dom::bindings::js::JSRef; use dom::bindings::js::JSRef;
use dom::bindings::trace::Traceable; 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> { impl<'a> EventTargetMethods for JSRef<'a, EventTarget> {
fn AddEventListener(&self, fn AddEventListener(&self,
ty: DOMString, ty: DOMString,

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::FileBinding; use dom::bindings::codegen::Bindings::FileBinding;
use dom::bindings::codegen::Bindings::FileBinding::FileMethods;
use dom::bindings::global::GlobalRef; use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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 { impl FileMethods for File {
fn Name(&self) -> DOMString { fn Name(&self) -> DOMString {
self.name.clone() self.name.clone()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::FormDataBinding; use dom::bindings::codegen::Bindings::FormDataBinding;
use dom::bindings::codegen::Bindings::FormDataBinding::FormDataMethods;
use dom::bindings::codegen::InheritTypes::FileCast; use dom::bindings::codegen::InheritTypes::FileCast;
use dom::bindings::codegen::UnionTypes::FileOrString::{FileOrString, eFile, eString}; use dom::bindings::codegen::UnionTypes::FileOrString::{FileOrString, eFile, eString};
use dom::bindings::error::{Fallible}; 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> { impl<'a> FormDataMethods for JSRef<'a, FormData> {
fn Append(&self, name: DOMString, value: &JSRef<Blob>, filename: Option<DOMString>) { fn Append(&self, name: DOMString, value: &JSRef<Blob>, filename: Option<DOMString>) {
let file = FileData(JS::from_rooted(&self.get_file_from_blob(value, filename))); let file = FileData(JS::from_rooted(&self.get_file_from_blob(value, filename)));

View file

@ -2,15 +2,16 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * 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/. */ * 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::Bindings::HTMLAnchorElementBinding;
use dom::bindings::codegen::InheritTypes::HTMLAnchorElementDerived; use dom::bindings::codegen::InheritTypes::HTMLAnchorElementDerived;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast, NodeCast}; use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast, NodeCast};
use dom::bindings::js::{JSRef, Temporary, OptionalRootable}; use dom::bindings::js::{JSRef, Temporary, OptionalRootable};
use dom::bindings::utils::{Reflectable, Reflector}; use dom::bindings::utils::{Reflectable, Reflector};
use dom::document::{Document, DocumentHelpers}; use dom::document::{Document, DocumentHelpers};
use dom::attr::AttrMethods;
use dom::element::{Element, AttributeHandlers, HTMLAnchorElementTypeId}; use dom::element::{Element, AttributeHandlers, HTMLAnchorElementTypeId};
use dom::event::{Event, EventMethods}; use dom::event::Event;
use dom::eventtarget::{EventTarget, NodeTargetTypeId}; use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::htmlelement::HTMLElement; use dom::htmlelement::HTMLElement;
use dom::node::{Node, NodeHelpers, ElementNodeTypeId}; use dom::node::{Node, NodeHelpers, ElementNodeTypeId};
@ -42,9 +43,6 @@ impl HTMLAnchorElement {
} }
} }
pub trait HTMLAnchorElementMethods {
}
trait PrivateHTMLAnchorElementHelpers { trait PrivateHTMLAnchorElementHelpers {
fn handle_event_impl(&self, event: &JSRef<Event>); fn handle_event_impl(&self, event: &JSRef<Event>);
} }

View file

@ -37,9 +37,6 @@ impl HTMLAppletElement {
} }
} }
pub trait HTMLAppletElementMethods {
}
impl Reflectable for HTMLAppletElement { impl Reflectable for HTMLAppletElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLAreaElement {
} }
} }
pub trait HTMLAreaElementMethods {
}
impl Reflectable for HTMLAreaElement { impl Reflectable for HTMLAreaElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLAudioElement {
} }
} }
pub trait HTMLAudioElementMethods {
}
impl Reflectable for HTMLAudioElement { impl Reflectable for HTMLAudioElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlmediaelement.reflector() self.htmlmediaelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLBaseElement {
} }
} }
pub trait HTMLBaseElementMethods {
}
impl Reflectable for HTMLBaseElement { impl Reflectable for HTMLBaseElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -4,6 +4,8 @@
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull; use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
use dom::bindings::codegen::Bindings::HTMLBodyElementBinding; 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::EventTargetCast;
use dom::bindings::codegen::InheritTypes::{HTMLBodyElementDerived, HTMLElementCast}; use dom::bindings::codegen::InheritTypes::{HTMLBodyElementDerived, HTMLElementCast};
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
@ -14,7 +16,6 @@ use dom::eventtarget::{EventTarget, NodeTargetTypeId, EventTargetHelpers};
use dom::htmlelement::HTMLElement; use dom::htmlelement::HTMLElement;
use dom::node::{Node, ElementNodeTypeId, window_from_node}; use dom::node::{Node, ElementNodeTypeId, window_from_node};
use dom::virtualmethods::VirtualMethods; use dom::virtualmethods::VirtualMethods;
use dom::window::WindowMethods;
use servo_util::str::DOMString; use servo_util::str::DOMString;
#[deriving(Encodable)] #[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> { impl<'a> HTMLBodyElementMethods for JSRef<'a, HTMLBodyElement> {
fn GetOnunload(&self) -> Option<EventHandlerNonNull> { fn GetOnunload(&self) -> Option<EventHandlerNonNull> {
let win = window_from_node(self).root(); let win = window_from_node(self).root();

View file

@ -37,9 +37,6 @@ impl HTMLBRElement {
} }
} }
pub trait HTMLBRElementMethods {
}
impl Reflectable for HTMLBRElement { impl Reflectable for HTMLBRElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLButtonElementBinding; use dom::bindings::codegen::Bindings::HTMLButtonElementBinding;
use dom::bindings::codegen::Bindings::HTMLButtonElementBinding::HTMLButtonElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLButtonElementDerived; use dom::bindings::codegen::InheritTypes::HTMLButtonElementDerived;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector}; 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> { impl<'a> HTMLButtonElementMethods for JSRef<'a, HTMLButtonElement> {
fn Validity(&self) -> Temporary<ValidityState> { fn Validity(&self) -> Temporary<ValidityState> {
let window = window_from_node(self).root(); let window = window_from_node(self).root();

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLCanvasElementBinding; use dom::bindings::codegen::Bindings::HTMLCanvasElementBinding;
use dom::bindings::codegen::Bindings::HTMLCanvasElementBinding::HTMLCanvasElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLCanvasElementDerived; use dom::bindings::codegen::InheritTypes::HTMLCanvasElementDerived;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast}; use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast};
use dom::bindings::global::Window; 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> { impl<'a> HTMLCanvasElementMethods for JSRef<'a, HTMLCanvasElement> {
fn Width(&self) -> u32 { fn Width(&self) -> u32 {
self.width.get() self.width.get()

View file

@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * 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/. */ * 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;
use dom::bindings::codegen::Bindings::HTMLCollectionBinding::HTMLCollectionMethods;
use dom::bindings::codegen::InheritTypes::{ElementCast, NodeCast};
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary}; use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> HTMLCollectionMethods for JSRef<'a, HTMLCollection> {
// http://dom.spec.whatwg.org/#dom-htmlcollection-length // http://dom.spec.whatwg.org/#dom-htmlcollection-length
fn Length(&self) -> u32 { fn Length(&self) -> u32 {

View file

@ -37,9 +37,6 @@ impl HTMLDataElement {
} }
} }
pub trait HTMLDataElementMethods {
}
impl Reflectable for HTMLDataElement { impl Reflectable for HTMLDataElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLDataListElementBinding; use dom::bindings::codegen::Bindings::HTMLDataListElementBinding;
use dom::bindings::codegen::Bindings::HTMLDataListElementBinding::HTMLDataListElementMethods;
use dom::bindings::codegen::InheritTypes::{HTMLDataListElementDerived, NodeCast}; use dom::bindings::codegen::InheritTypes::{HTMLDataListElementDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector}; 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> { impl<'a> HTMLDataListElementMethods for JSRef<'a, HTMLDataListElement> {
fn Options(&self) -> Temporary<HTMLCollection> { fn Options(&self) -> Temporary<HTMLCollection> {
struct HTMLDataListOptionsFilter; struct HTMLDataListOptionsFilter;

View file

@ -37,9 +37,6 @@ impl HTMLDirectoryElement {
} }
} }
pub trait HTMLDirectoryElementMethods {
}
impl Reflectable for HTMLDirectoryElement { impl Reflectable for HTMLDirectoryElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLDivElement {
} }
} }
pub trait HTMLDivElementMethods {
}
impl Reflectable for HTMLDivElement { impl Reflectable for HTMLDivElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLDListElement {
} }
} }
pub trait HTMLDListElementMethods {
}
impl Reflectable for HTMLDListElement { impl Reflectable for HTMLDListElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -4,6 +4,8 @@
use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull; use dom::bindings::codegen::Bindings::EventHandlerBinding::EventHandlerNonNull;
use dom::bindings::codegen::Bindings::HTMLElementBinding; 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::{ElementCast, HTMLFrameSetElementDerived};
use dom::bindings::codegen::InheritTypes::EventTargetCast; use dom::bindings::codegen::InheritTypes::EventTargetCast;
use dom::bindings::codegen::InheritTypes::{HTMLElementDerived, HTMLBodyElementDerived}; 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::eventtarget::{EventTarget, EventTargetHelpers, NodeTargetTypeId};
use dom::node::{Node, ElementNodeTypeId, window_from_node}; use dom::node::{Node, ElementNodeTypeId, window_from_node};
use dom::virtualmethods::VirtualMethods; use dom::virtualmethods::VirtualMethods;
use dom::window::WindowMethods;
use servo_util::namespace; use servo_util::namespace;
use servo_util::str::DOMString; 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> { impl<'a> HTMLElementMethods for JSRef<'a, HTMLElement> {
fn GetOnclick(&self) -> Option<EventHandlerNonNull> { fn GetOnclick(&self) -> Option<EventHandlerNonNull> {
let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self); let eventtarget: &JSRef<EventTarget> = EventTargetCast::from_ref(self);

View file

@ -37,9 +37,6 @@ impl HTMLEmbedElement {
} }
} }
pub trait HTMLEmbedElementMethods {
}
impl Reflectable for HTMLEmbedElement { impl Reflectable for HTMLEmbedElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding; use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding;
use dom::bindings::codegen::Bindings::HTMLFieldSetElementBinding::HTMLFieldSetElementMethods;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLFieldSetElementDerived, NodeCast}; use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLFieldSetElementDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector}; 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> { impl<'a> HTMLFieldSetElementMethods for JSRef<'a, HTMLFieldSetElement> {
// http://www.whatwg.org/html/#dom-fieldset-elements // http://www.whatwg.org/html/#dom-fieldset-elements
fn Elements(&self) -> Temporary<HTMLCollection> { fn Elements(&self) -> Temporary<HTMLCollection> {

View file

@ -37,9 +37,6 @@ impl HTMLFontElement {
} }
} }
pub trait HTMLFontElementMethods {
}
impl Reflectable for HTMLFontElement { impl Reflectable for HTMLFontElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLFormElement {
} }
} }
pub trait HTMLFormElementMethods {
}
impl Reflectable for HTMLFormElement { impl Reflectable for HTMLFormElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLFrameElement {
} }
} }
pub trait HTMLFrameElementMethods {
}
impl Reflectable for HTMLFrameElement { impl Reflectable for HTMLFrameElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLFrameSetElement {
} }
} }
pub trait HTMLFrameSetElementMethods {
}
impl Reflectable for HTMLFrameSetElement { impl Reflectable for HTMLFrameSetElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLHeadElement {
} }
} }
pub trait HTMLHeadElementMethods {
}
impl Reflectable for HTMLHeadElement { impl Reflectable for HTMLHeadElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -49,9 +49,6 @@ impl HTMLHeadingElement {
} }
} }
pub trait HTMLHeadingElementMethods {
}
impl Reflectable for HTMLHeadingElement { impl Reflectable for HTMLHeadingElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLHRElement {
} }
} }
pub trait HTMLHRElementMethods {
}
impl Reflectable for HTMLHRElement { impl Reflectable for HTMLHRElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLHtmlElement {
} }
} }
pub trait HTMLHtmlElementMethods {
}
impl Reflectable for HTMLHtmlElement { impl Reflectable for HTMLHtmlElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLIFrameElementBinding; use dom::bindings::codegen::Bindings::HTMLIFrameElementBinding;
use dom::bindings::codegen::Bindings::HTMLIFrameElementBinding::HTMLIFrameElementMethods;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLIFrameElementDerived, HTMLElementCast}; use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLIFrameElementDerived, HTMLElementCast};
use dom::bindings::js::{JSRef, Temporary, OptionalRootable}; use dom::bindings::js::{JSRef, Temporary, OptionalRootable};
use dom::bindings::trace::Traceable; 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> { impl<'a> HTMLIFrameElementMethods for JSRef<'a, HTMLIFrameElement> {
fn Src(&self) -> DOMString { fn Src(&self) -> DOMString {
let element: &JSRef<Element> = ElementCast::from_ref(self); let element: &JSRef<Element> = ElementCast::from_ref(self);

View file

@ -4,6 +4,7 @@
use dom::attr::AttrValue; use dom::attr::AttrValue;
use dom::bindings::codegen::Bindings::HTMLImageElementBinding; 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::codegen::InheritTypes::{NodeCast, ElementCast, HTMLElementCast, HTMLImageElementDerived};
use dom::bindings::js::{JS, JSRef, Temporary}; use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::trace::Untraceable; 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> { impl<'a> HTMLImageElementMethods for JSRef<'a, HTMLImageElement> {
fn Alt(&self) -> DOMString { fn Alt(&self) -> DOMString {
let element: &JSRef<Element> = ElementCast::from_ref(self); let element: &JSRef<Element> = ElementCast::from_ref(self);

View file

@ -37,9 +37,6 @@ impl HTMLInputElement {
} }
} }
pub trait HTMLInputElementMethods {
}
impl Reflectable for HTMLInputElement { impl Reflectable for HTMLInputElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLLabelElement {
} }
} }
pub trait HTMLLabelElementMethods {
}
impl Reflectable for HTMLLabelElement { impl Reflectable for HTMLLabelElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLLegendElement {
} }
} }
pub trait HTMLLegendElementMethods {
}
impl Reflectable for HTMLLegendElement { impl Reflectable for HTMLLegendElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLLIElement {
} }
} }
pub trait HTMLLIElementMethods {
}
impl Reflectable for HTMLLIElement { impl Reflectable for HTMLLIElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLLinkElement {
} }
} }
pub trait HTMLLinkElementMethods {
}
impl Reflectable for HTMLLinkElement { impl Reflectable for HTMLLinkElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLMapElement {
} }
} }
pub trait HTMLMapElementMethods {
}
impl Reflectable for HTMLMapElement { impl Reflectable for HTMLMapElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -35,9 +35,6 @@ impl HTMLMediaElement {
} }
} }
pub trait HTMLMediaElementMethods {
}
impl Reflectable for HTMLMediaElement { impl Reflectable for HTMLMediaElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLMetaElement {
} }
} }
pub trait HTMLMetaElementMethods {
}
impl Reflectable for HTMLMetaElement { impl Reflectable for HTMLMetaElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLMeterElement {
} }
} }
pub trait HTMLMeterElementMethods {
}
impl Reflectable for HTMLMeterElement { impl Reflectable for HTMLMeterElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLModElement {
} }
} }
pub trait HTMLModElementMethods {
}
impl Reflectable for HTMLModElement { impl Reflectable for HTMLModElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -2,8 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * 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/. */ * 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;
use dom::bindings::codegen::Bindings::HTMLObjectElementBinding::HTMLObjectElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLObjectElementDerived; use dom::bindings::codegen::InheritTypes::HTMLObjectElementDerived;
use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast}; use dom::bindings::codegen::InheritTypes::{ElementCast, HTMLElementCast};
use dom::bindings::js::{JSRef, Temporary}; 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_)) types.iter().any(|&type_| uri.starts_with(type_))
} }
pub trait HTMLObjectElementMethods {
fn Validity(&self) -> Temporary<ValidityState>;
}
impl<'a> HTMLObjectElementMethods for JSRef<'a, HTMLObjectElement> { impl<'a> HTMLObjectElementMethods for JSRef<'a, HTMLObjectElement> {
fn Validity(&self) -> Temporary<ValidityState> { fn Validity(&self) -> Temporary<ValidityState> {
let window = window_from_node(self).root(); let window = window_from_node(self).root();

View file

@ -37,9 +37,6 @@ impl HTMLOListElement {
} }
} }
pub trait HTMLOListElementMethods {
}
impl Reflectable for HTMLOListElement { impl Reflectable for HTMLOListElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLOptGroupElement {
} }
} }
pub trait HTMLOptGroupElementMethods {
}
impl Reflectable for HTMLOptGroupElement { impl Reflectable for HTMLOptGroupElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLOptionElement {
} }
} }
pub trait HTMLOptionElementMethods {
}
impl Reflectable for HTMLOptionElement { impl Reflectable for HTMLOptionElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLOutputElementBinding; use dom::bindings::codegen::Bindings::HTMLOutputElementBinding;
use dom::bindings::codegen::Bindings::HTMLOutputElementBinding::HTMLOutputElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLOutputElementDerived; use dom::bindings::codegen::InheritTypes::HTMLOutputElementDerived;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector}; 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> { impl<'a> HTMLOutputElementMethods for JSRef<'a, HTMLOutputElement> {
fn Validity(&self) -> Temporary<ValidityState> { fn Validity(&self) -> Temporary<ValidityState> {
let window = window_from_node(self).root(); let window = window_from_node(self).root();

View file

@ -37,9 +37,6 @@ impl HTMLParagraphElement {
} }
} }
pub trait HTMLParagraphElementMethods {
}
impl Reflectable for HTMLParagraphElement { impl Reflectable for HTMLParagraphElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLParamElement {
} }
} }
pub trait HTMLParamElementMethods {
}
impl Reflectable for HTMLParamElement { impl Reflectable for HTMLParamElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLPreElement {
} }
} }
pub trait HTMLPreElementMethods {
}
impl Reflectable for HTMLPreElement { impl Reflectable for HTMLPreElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLProgressElement {
} }
} }
pub trait HTMLProgressElementMethods {
}
impl Reflectable for HTMLProgressElement { impl Reflectable for HTMLProgressElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLQuoteElement {
} }
} }
pub trait HTMLQuoteElementMethods {
}
impl Reflectable for HTMLQuoteElement { impl Reflectable for HTMLQuoteElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLScriptElementBinding; use dom::bindings::codegen::Bindings::HTMLScriptElementBinding;
use dom::bindings::codegen::Bindings::HTMLScriptElementBinding::HTMLScriptElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLScriptElementDerived; use dom::bindings::codegen::InheritTypes::HTMLScriptElementDerived;
use dom::bindings::codegen::InheritTypes::ElementCast; use dom::bindings::codegen::InheritTypes::ElementCast;
use dom::bindings::js::{JSRef, Temporary}; 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> { impl<'a> HTMLScriptElementMethods for JSRef<'a, HTMLScriptElement> {
fn Src(&self) -> DOMString { fn Src(&self) -> DOMString {
let element: &JSRef<Element> = ElementCast::from_ref(self); let element: &JSRef<Element> = ElementCast::from_ref(self);

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLSelectElementBinding; use dom::bindings::codegen::Bindings::HTMLSelectElementBinding;
use dom::bindings::codegen::Bindings::HTMLSelectElementBinding::HTMLSelectElementMethods;
use dom::bindings::codegen::InheritTypes::HTMLSelectElementDerived; use dom::bindings::codegen::InheritTypes::HTMLSelectElementDerived;
use dom::bindings::codegen::UnionTypes::HTMLElementOrLong::HTMLElementOrLong; use dom::bindings::codegen::UnionTypes::HTMLElementOrLong::HTMLElementOrLong;
use dom::bindings::codegen::UnionTypes::HTMLOptionElementOrHTMLOptGroupElement::HTMLOptionElementOrHTMLOptGroupElement; 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> { impl<'a> HTMLSelectElementMethods for JSRef<'a, HTMLSelectElement> {
fn Validity(&self) -> Temporary<ValidityState> { fn Validity(&self) -> Temporary<ValidityState> {
let window = window_from_node(self).root(); let window = window_from_node(self).root();

View file

@ -37,9 +37,6 @@ impl HTMLSourceElement {
} }
} }
pub trait HTMLSourceElementMethods {
}
impl Reflectable for HTMLSourceElement { impl Reflectable for HTMLSourceElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLSpanElement {
} }
} }
pub trait HTMLSpanElementMethods {
}
impl Reflectable for HTMLSpanElement { impl Reflectable for HTMLSpanElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::HTMLStyleElementBinding; use dom::bindings::codegen::Bindings::HTMLStyleElementBinding;
use dom::bindings::codegen::Bindings::NodeBinding::NodeMethods;
use dom::bindings::codegen::InheritTypes::{HTMLElementCast, HTMLStyleElementDerived, NodeCast}; use dom::bindings::codegen::InheritTypes::{HTMLElementCast, HTMLStyleElementDerived, NodeCast};
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector}; use dom::bindings::utils::{Reflectable, Reflector};
@ -10,7 +11,7 @@ use dom::document::Document;
use dom::element::HTMLStyleElementTypeId; use dom::element::HTMLStyleElementTypeId;
use dom::eventtarget::{EventTarget, NodeTargetTypeId}; use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::htmlelement::HTMLElement; 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 dom::virtualmethods::VirtualMethods;
use html::cssparse::parse_inline_css; use html::cssparse::parse_inline_css;
use layout_interface::{AddStylesheetMsg, LayoutChan}; use layout_interface::{AddStylesheetMsg, LayoutChan};
@ -40,9 +41,6 @@ impl HTMLStyleElement {
} }
} }
pub trait HTMLStyleElementMethods {
}
pub trait StyleElementHelpers { pub trait StyleElementHelpers {
fn parse_own_css(&self); fn parse_own_css(&self);
} }

View file

@ -37,9 +37,6 @@ impl HTMLTableCaptionElement {
} }
} }
pub trait HTMLTableCaptionElementMethods {
}
impl Reflectable for HTMLTableCaptionElement { impl Reflectable for HTMLTableCaptionElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -35,9 +35,6 @@ impl HTMLTableCellElement {
} }
} }
pub trait HTMLTableCellElementMethods {
}
impl Reflectable for HTMLTableCellElement { impl Reflectable for HTMLTableCellElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTableColElement {
} }
} }
pub trait HTMLTableColElementMethods {
}
impl Reflectable for HTMLTableColElement { impl Reflectable for HTMLTableColElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTableDataCellElement {
} }
} }
pub trait HTMLTableDataCellElementMethods {
}
impl Reflectable for HTMLTableDataCellElement { impl Reflectable for HTMLTableDataCellElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmltablecellelement.reflector() self.htmltablecellelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTableElement {
} }
} }
pub trait HTMLTableElementMethods {
}
impl Reflectable for HTMLTableElement { impl Reflectable for HTMLTableElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTableHeaderCellElement {
} }
} }
pub trait HTMLTableHeaderCellElementMethods {
}
impl Reflectable for HTMLTableHeaderCellElement { impl Reflectable for HTMLTableHeaderCellElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmltablecellelement.reflector() self.htmltablecellelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTableRowElement {
} }
} }
pub trait HTMLTableRowElementMethods {
}
impl Reflectable for HTMLTableRowElement { impl Reflectable for HTMLTableRowElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTableSectionElement {
} }
} }
pub trait HTMLTableSectionElementMethods {
}
impl Reflectable for HTMLTableSectionElement { impl Reflectable for HTMLTableSectionElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTemplateElement {
} }
} }
pub trait HTMLTemplateElementMethods {
}
impl Reflectable for HTMLTemplateElement { impl Reflectable for HTMLTemplateElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTextAreaElement {
} }
} }
pub trait HTMLTextAreaElementMethods {
}
impl Reflectable for HTMLTextAreaElement { impl Reflectable for HTMLTextAreaElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTimeElement {
} }
} }
pub trait HTMLTimeElementMethods {
}
impl Reflectable for HTMLTimeElement { impl Reflectable for HTMLTimeElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTitleElement {
} }
} }
pub trait HTMLTitleElementMethods {
}
impl Reflectable for HTMLTitleElement { impl Reflectable for HTMLTitleElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLTrackElement {
} }
} }
pub trait HTMLTrackElementMethods {
}
impl Reflectable for HTMLTrackElement { impl Reflectable for HTMLTrackElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLUListElement {
} }
} }
pub trait HTMLUListElementMethods {
}
impl Reflectable for HTMLUListElement { impl Reflectable for HTMLUListElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLUnknownElement {
} }
} }
pub trait HTMLUnknownElementMethods {
}
impl Reflectable for HTMLUnknownElement { impl Reflectable for HTMLUnknownElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlelement.reflector() self.htmlelement.reflector()

View file

@ -37,9 +37,6 @@ impl HTMLVideoElement {
} }
} }
pub trait HTMLVideoElementMethods {
}
impl Reflectable for HTMLVideoElement { impl Reflectable for HTMLVideoElement {
fn reflector<'a>(&'a self) -> &'a Reflector { fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlmediaelement.reflector() self.htmlmediaelement.reflector()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::LocationBinding; use dom::bindings::codegen::Bindings::LocationBinding;
use dom::bindings::codegen::Bindings::LocationBinding::LocationMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> LocationMethods for JSRef<'a, Location> {
fn Href(&self) -> DOMString { fn Href(&self) -> DOMString {
self.page.get_url().serialize() self.page.get_url().serialize()

View file

@ -2,7 +2,9 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this * 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/. */ * 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;
use dom::bindings::codegen::Bindings::MessageEventBinding::MessageEventMethods;
use dom::bindings::codegen::InheritTypes::{EventCast, MessageEventDerived}; use dom::bindings::codegen::InheritTypes::{EventCast, MessageEventDerived};
use dom::bindings::conversions::ToJSValConvertible; use dom::bindings::conversions::ToJSValConvertible;
use dom::bindings::error::Fallible; use dom::bindings::error::Fallible;
@ -10,7 +12,7 @@ use dom::bindings::global::GlobalRef;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::trace::Traceable; use dom::bindings::trace::Traceable;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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 dom::eventtarget::{EventTarget, EventTargetHelpers};
use servo_util::str::DOMString; 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> { impl<'a> MessageEventMethods for JSRef<'a, MessageEvent> {
fn Data(&self, _cx: *mut JSContext) -> JSVal { fn Data(&self, _cx: *mut JSContext) -> JSVal {
*self.data *self.data

View file

@ -3,6 +3,8 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::MouseEventBinding; 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::codegen::InheritTypes::{UIEventCast, MouseEventDerived};
use dom::bindings::error::Fallible; use dom::bindings::error::Fallible;
use dom::bindings::global::{GlobalRef, Window}; 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::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::event::{Event, MouseEventTypeId}; use dom::event::{Event, MouseEventTypeId};
use dom::eventtarget::EventTarget; use dom::eventtarget::EventTarget;
use dom::uievent::{UIEvent, UIEventMethods}; use dom::uievent::UIEvent;
use dom::window::Window; use dom::window::Window;
use servo_util::str::DOMString; use servo_util::str::DOMString;
use std::cell::Cell; 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> { impl<'a> MouseEventMethods for JSRef<'a, MouseEvent> {
fn ScreenX(&self) -> i32 { fn ScreenX(&self) -> i32 {
self.screen_x.deref().get() self.screen_x.deref().get()

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::NavigatorBinding; use dom::bindings::codegen::Bindings::NavigatorBinding;
use dom::bindings::codegen::Bindings::NavigatorBinding::NavigatorMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> NavigatorMethods for JSRef<'a, Navigator> {
fn Product(&self) -> DOMString { fn Product(&self) -> DOMString {
"Gecko".to_string() "Gecko".to_string()

View file

@ -5,12 +5,17 @@
//! The core DOM types. Defines the basic DOM hierarchy as well as all the HTML elements. //! The core DOM types. Defines the basic DOM hierarchy as well as all the HTML elements.
use cssparser::tokenize; 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::{CommentCast, DocumentCast, DocumentTypeCast};
use dom::bindings::codegen::InheritTypes::{ElementCast, TextCast, NodeCast, ElementDerived}; use dom::bindings::codegen::InheritTypes::{ElementCast, TextCast, NodeCast, ElementDerived};
use dom::bindings::codegen::InheritTypes::{CharacterDataCast, NodeBase, NodeDerived}; use dom::bindings::codegen::InheritTypes::{CharacterDataCast, NodeBase, NodeDerived};
use dom::bindings::codegen::InheritTypes::{ProcessingInstructionCast, EventTargetCast}; 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::error::{ErrorResult, Fallible, NotFound, HierarchyRequest, Syntax};
use dom::bindings::global::{GlobalRef, Window}; use dom::bindings::global::{GlobalRef, Window};
use dom::bindings::js::{JS, JSRef, RootedReference, Temporary, Root, OptionalUnrootable}; 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::trace::Traceable;
use dom::bindings::utils; use dom::bindings::utils;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::characterdata::{CharacterData, CharacterDataMethods}; use dom::characterdata::CharacterData;
use dom::comment::Comment; 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::documentfragment::DocumentFragment;
use dom::documenttype::DocumentType; use dom::documenttype::DocumentType;
use dom::element::{AttributeHandlers, Element, ElementMethods, ElementTypeId}; use dom::element::{AttributeHandlers, Element, ElementTypeId};
use dom::element::{HTMLAnchorElementTypeId, ElementHelpers}; use dom::element::{HTMLAnchorElementTypeId, ElementHelpers};
use dom::eventtarget::{EventTarget, NodeTargetTypeId}; use dom::eventtarget::{EventTarget, NodeTargetTypeId};
use dom::nodelist::{NodeList}; use dom::nodelist::{NodeList};
use dom::processinginstruction::{ProcessingInstruction, ProcessingInstructionMethods}; use dom::processinginstruction::ProcessingInstruction;
use dom::text::Text; use dom::text::Text;
use dom::virtualmethods::{VirtualMethods, vtable_for}; use dom::virtualmethods::{VirtualMethods, vtable_for};
use dom::window::Window; 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> { impl<'a> NodeMethods for JSRef<'a, Node> {
// http://dom.spec.whatwg.org/#dom-node-nodetype // http://dom.spec.whatwg.org/#dom-node-nodetype
fn NodeType(&self) -> u16 { fn NodeType(&self) -> u16 {

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::NodeListBinding; use dom::bindings::codegen::Bindings::NodeListBinding;
use dom::bindings::codegen::Bindings::NodeListBinding::NodeListMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary}; use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> NodeListMethods for JSRef<'a, NodeList> {
fn Length(&self) -> u32 { fn Length(&self) -> u32 {
match self.list_type { match self.list_type {

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::PerformanceBinding; use dom::bindings::codegen::Bindings::PerformanceBinding;
use dom::bindings::codegen::Bindings::PerformanceBinding::PerformanceMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JS, JSRef, Temporary}; use dom::bindings::js::{JS, JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> PerformanceMethods for JSRef<'a, Performance> {
fn Timing(&self) -> Temporary<PerformanceTiming> { fn Timing(&self) -> Temporary<PerformanceTiming> {
Temporary::new(self.timing.clone()) Temporary::new(self.timing.clone())

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::Bindings::PerformanceTimingBinding; use dom::bindings::codegen::Bindings::PerformanceTimingBinding;
use dom::bindings::codegen::Bindings::PerformanceTimingBinding::PerformanceTimingMethods;
use dom::bindings::global::Window; use dom::bindings::global::Window;
use dom::bindings::js::{JSRef, Temporary}; use dom::bindings::js::{JSRef, Temporary};
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object}; 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> { impl<'a> PerformanceTimingMethods for JSRef<'a, PerformanceTiming> {
fn NavigationStart(&self) -> u64 { fn NavigationStart(&self) -> u64 {
self.navigationStart self.navigationStart

Some files were not shown because too many files have changed in this diff Show more