auto merge of #1064 : saneyuki/servo/cleanup, r=jdm

This pull request is based on #1063.
This commit is contained in:
bors-servo 2013-10-15 10:34:09 -07:00
commit c9c9eec3d8
11 changed files with 182 additions and 56 deletions

View file

@ -8,6 +8,7 @@ use dom::bindings::utils::{BindingObject, Reflector, Reflectable, Traceable};
use js::jsapi::{JSContext, JSObject, JSTracer}; use js::jsapi::{JSContext, JSObject, JSTracer};
// generate_cacheable_wrapper
macro_rules! generate_cacheable_wrapper( macro_rules! generate_cacheable_wrapper(
($name: path, $wrap: path) => ( ($name: path, $wrap: path) => (
impl Reflectable for $name { impl Reflectable for $name {
@ -46,6 +47,44 @@ macro_rules! generate_cacheable_wrapper_htmlelement(
) )
) )
macro_rules! generate_cacheable_wrapper_htmlmediaelement(
($name: path, $wrap: path) => (
impl Reflectable for $name {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmlmediaelement.reflector()
}
fn mut_reflector<'a>(&'a mut self) -> &'a mut Reflector {
self.htmlmediaelement.mut_reflector()
}
fn wrap_object_shared(@mut self, cx: *JSContext, scope: *JSObject) -> *JSObject {
let mut unused = false;
$wrap(cx, scope, self, &mut unused)
}
}
)
)
macro_rules! generate_cacheable_wrapper_htmltablecellelement(
($name: path, $wrap: path) => (
impl Reflectable for $name {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.htmltablecellelement.reflector()
}
fn mut_reflector<'a>(&'a mut self) -> &'a mut Reflector {
self.htmltablecellelement.mut_reflector()
}
fn wrap_object_shared(@mut self, cx: *JSContext, scope: *JSObject) -> *JSObject {
let mut unused = false;
$wrap(cx, scope, self, &mut unused)
}
}
)
)
macro_rules! generate_cacheable_wrapper_node( macro_rules! generate_cacheable_wrapper_node(
($name: path, $wrap: path) => ( ($name: path, $wrap: path) => (
impl Reflectable for $name { impl Reflectable for $name {
@ -65,6 +104,8 @@ macro_rules! generate_cacheable_wrapper_node(
) )
) )
// generate_binding_object
macro_rules! generate_binding_object( macro_rules! generate_binding_object(
($name: path) => ( ($name: path) => (
impl BindingObject for $name { impl BindingObject for $name {
@ -85,6 +126,26 @@ macro_rules! generate_binding_object_htmlelement(
) )
) )
macro_rules! generate_binding_object_htmlmediaelement(
($name: path) => (
impl BindingObject for $name {
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.htmlmediaelement.GetParentObject(cx)
}
}
)
)
macro_rules! generate_binding_object_htmltablecellelement(
($name: path) => (
impl BindingObject for $name {
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.htmltablecellelement.GetParentObject(cx)
}
}
)
)
macro_rules! generate_binding_object_node( macro_rules! generate_binding_object_node(
($name: path) => ( ($name: path) => (
impl BindingObject for $name { impl BindingObject for $name {
@ -95,6 +156,8 @@ macro_rules! generate_binding_object_node(
) )
) )
// generate_traceable
macro_rules! generate_traceable( macro_rules! generate_traceable(
($name: path) => ( ($name: path) => (
impl Traceable for $name { impl Traceable for $name {
@ -115,6 +178,26 @@ macro_rules! generate_traceable_htmlelement(
) )
) )
macro_rules! generate_traceable_htmlmediaelement(
($name: path) => (
impl Traceable for $name {
fn trace(&self, trc: *mut JSTracer) {
self.htmlmediaelement.trace(trc);
}
}
)
)
macro_rules! generate_traceable_htmltablecellelement(
($name: path) => (
impl Traceable for $name {
fn trace(&self, trc: *mut JSTracer) {
self.htmltablecellelement.trace(trc);
}
}
)
)
macro_rules! generate_traceable_node( macro_rules! generate_traceable_node(
($name: path) => ( ($name: path) => (
impl Traceable for $name { impl Traceable for $name {
@ -128,217 +211,293 @@ macro_rules! generate_traceable_node(
generate_cacheable_wrapper!(Comment, CommentBinding::Wrap) generate_cacheable_wrapper!(Comment, CommentBinding::Wrap)
generate_binding_object!(Comment) generate_binding_object!(Comment)
generate_traceable!(Comment) generate_traceable!(Comment)
generate_cacheable_wrapper_node!(DocumentFragment, DocumentFragmentBinding::Wrap) generate_cacheable_wrapper_node!(DocumentFragment, DocumentFragmentBinding::Wrap)
generate_binding_object_node!(DocumentFragment) generate_binding_object_node!(DocumentFragment)
generate_traceable_node!(DocumentFragment) generate_traceable_node!(DocumentFragment)
generate_cacheable_wrapper_node!(DocumentType, DocumentTypeBinding::Wrap) generate_cacheable_wrapper_node!(DocumentType, DocumentTypeBinding::Wrap)
generate_binding_object_node!(DocumentType) generate_binding_object_node!(DocumentType)
generate_traceable_node!(DocumentType) generate_traceable_node!(DocumentType)
generate_cacheable_wrapper!(Text, TextBinding::Wrap) generate_cacheable_wrapper!(Text, TextBinding::Wrap)
generate_binding_object!(Text) generate_binding_object!(Text)
generate_traceable!(Text) generate_traceable!(Text)
generate_cacheable_wrapper_htmlelement!(HTMLHeadElement, HTMLHeadElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLHeadElement, HTMLHeadElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLHeadElement) generate_binding_object_htmlelement!(HTMLHeadElement)
generate_traceable_htmlelement!(HTMLHeadElement) generate_traceable_htmlelement!(HTMLHeadElement)
generate_cacheable_wrapper_htmlelement!(HTMLAnchorElement, HTMLAnchorElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLAnchorElement, HTMLAnchorElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLAnchorElement) generate_binding_object_htmlelement!(HTMLAnchorElement)
generate_traceable_htmlelement!(HTMLAnchorElement) generate_traceable_htmlelement!(HTMLAnchorElement)
generate_cacheable_wrapper_htmlelement!(HTMLAppletElement, HTMLAppletElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLAppletElement, HTMLAppletElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLAppletElement) generate_binding_object_htmlelement!(HTMLAppletElement)
generate_traceable_htmlelement!(HTMLAppletElement) generate_traceable_htmlelement!(HTMLAppletElement)
generate_cacheable_wrapper_htmlelement!(HTMLAreaElement, HTMLAreaElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLAreaElement, HTMLAreaElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLAreaElement) generate_binding_object_htmlelement!(HTMLAreaElement)
generate_traceable_htmlelement!(HTMLAreaElement) generate_traceable_htmlelement!(HTMLAreaElement)
generate_cacheable_wrapper_htmlelement!(HTMLAudioElement, HTMLAudioElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLAudioElement) generate_cacheable_wrapper_htmlmediaelement!(HTMLAudioElement, HTMLAudioElementBinding::Wrap)
generate_traceable_htmlelement!(HTMLAudioElement) generate_binding_object_htmlmediaelement!(HTMLAudioElement)
generate_traceable_htmlmediaelement!(HTMLAudioElement)
generate_cacheable_wrapper_htmlelement!(HTMLBaseElement, HTMLBaseElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLBaseElement, HTMLBaseElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLBaseElement) generate_binding_object_htmlelement!(HTMLBaseElement)
generate_traceable_htmlelement!(HTMLBaseElement) generate_traceable_htmlelement!(HTMLBaseElement)
generate_cacheable_wrapper_htmlelement!(HTMLBodyElement, HTMLBodyElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLBodyElement, HTMLBodyElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLBodyElement) generate_binding_object_htmlelement!(HTMLBodyElement)
generate_traceable_htmlelement!(HTMLBodyElement) generate_traceable_htmlelement!(HTMLBodyElement)
generate_cacheable_wrapper_htmlelement!(HTMLButtonElement, HTMLButtonElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLButtonElement, HTMLButtonElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLButtonElement) generate_binding_object_htmlelement!(HTMLButtonElement)
generate_traceable_htmlelement!(HTMLButtonElement) generate_traceable_htmlelement!(HTMLButtonElement)
generate_cacheable_wrapper_htmlelement!(HTMLCanvasElement, HTMLCanvasElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLCanvasElement, HTMLCanvasElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLCanvasElement) generate_binding_object_htmlelement!(HTMLCanvasElement)
generate_traceable_htmlelement!(HTMLCanvasElement) generate_traceable_htmlelement!(HTMLCanvasElement)
generate_cacheable_wrapper_htmlelement!(HTMLDataListElement, HTMLDataListElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLDataListElement, HTMLDataListElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLDataListElement) generate_binding_object_htmlelement!(HTMLDataListElement)
generate_traceable_htmlelement!(HTMLDataListElement) generate_traceable_htmlelement!(HTMLDataListElement)
generate_cacheable_wrapper_htmlelement!(HTMLDListElement, HTMLDListElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLDListElement, HTMLDListElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLDListElement) generate_binding_object_htmlelement!(HTMLDListElement)
generate_traceable_htmlelement!(HTMLDListElement) generate_traceable_htmlelement!(HTMLDListElement)
generate_cacheable_wrapper_htmlelement!(HTMLFormElement, HTMLFormElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLFormElement, HTMLFormElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLFormElement) generate_binding_object_htmlelement!(HTMLFormElement)
generate_traceable_htmlelement!(HTMLFormElement) generate_traceable_htmlelement!(HTMLFormElement)
generate_cacheable_wrapper_htmlelement!(HTMLFrameElement, HTMLFrameElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLFrameElement, HTMLFrameElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLFrameElement) generate_binding_object_htmlelement!(HTMLFrameElement)
generate_traceable_htmlelement!(HTMLFrameElement) generate_traceable_htmlelement!(HTMLFrameElement)
generate_cacheable_wrapper_htmlelement!(HTMLFrameSetElement, HTMLFrameSetElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLFrameSetElement, HTMLFrameSetElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLFrameSetElement) generate_binding_object_htmlelement!(HTMLFrameSetElement)
generate_traceable_htmlelement!(HTMLFrameSetElement) generate_traceable_htmlelement!(HTMLFrameSetElement)
generate_cacheable_wrapper_htmlelement!(HTMLBRElement, HTMLBRElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLBRElement, HTMLBRElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLBRElement) generate_binding_object_htmlelement!(HTMLBRElement)
generate_traceable_htmlelement!(HTMLBRElement) generate_traceable_htmlelement!(HTMLBRElement)
generate_cacheable_wrapper_htmlelement!(HTMLHRElement, HTMLHRElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLHRElement, HTMLHRElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLHRElement) generate_binding_object_htmlelement!(HTMLHRElement)
generate_traceable_htmlelement!(HTMLHRElement) generate_traceable_htmlelement!(HTMLHRElement)
generate_cacheable_wrapper_htmlelement!(HTMLHtmlElement, HTMLHtmlElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLHtmlElement, HTMLHtmlElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLHtmlElement) generate_binding_object_htmlelement!(HTMLHtmlElement)
generate_traceable_htmlelement!(HTMLHtmlElement) generate_traceable_htmlelement!(HTMLHtmlElement)
generate_cacheable_wrapper_htmlelement!(HTMLDataElement, HTMLDataElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLDataElement, HTMLDataElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLDataElement) generate_binding_object_htmlelement!(HTMLDataElement)
generate_traceable_htmlelement!(HTMLDataElement) generate_traceable_htmlelement!(HTMLDataElement)
generate_cacheable_wrapper_htmlelement!(HTMLDirectoryElement, HTMLDirectoryElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLDirectoryElement, HTMLDirectoryElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLDirectoryElement) generate_binding_object_htmlelement!(HTMLDirectoryElement)
generate_traceable_htmlelement!(HTMLDirectoryElement) generate_traceable_htmlelement!(HTMLDirectoryElement)
generate_cacheable_wrapper_htmlelement!(HTMLDivElement, HTMLDivElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLDivElement, HTMLDivElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLDivElement) generate_binding_object_htmlelement!(HTMLDivElement)
generate_traceable_htmlelement!(HTMLDivElement) generate_traceable_htmlelement!(HTMLDivElement)
generate_cacheable_wrapper_htmlelement!(HTMLEmbedElement, HTMLEmbedElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLEmbedElement, HTMLEmbedElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLEmbedElement) generate_binding_object_htmlelement!(HTMLEmbedElement)
generate_traceable_htmlelement!(HTMLEmbedElement) generate_traceable_htmlelement!(HTMLEmbedElement)
generate_cacheable_wrapper_htmlelement!(HTMLFieldSetElement, HTMLFieldSetElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLFieldSetElement, HTMLFieldSetElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLFieldSetElement) generate_binding_object_htmlelement!(HTMLFieldSetElement)
generate_traceable_htmlelement!(HTMLFieldSetElement) generate_traceable_htmlelement!(HTMLFieldSetElement)
generate_cacheable_wrapper_htmlelement!(HTMLFontElement, HTMLFontElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLFontElement, HTMLFontElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLFontElement) generate_binding_object_htmlelement!(HTMLFontElement)
generate_traceable_htmlelement!(HTMLFontElement) generate_traceable_htmlelement!(HTMLFontElement)
generate_cacheable_wrapper_htmlelement!(HTMLHeadingElement, HTMLHeadingElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLHeadingElement, HTMLHeadingElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLHeadingElement) generate_binding_object_htmlelement!(HTMLHeadingElement)
generate_traceable_htmlelement!(HTMLHeadingElement) generate_traceable_htmlelement!(HTMLHeadingElement)
generate_cacheable_wrapper_htmlelement!(HTMLIFrameElement, HTMLIFrameElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLIFrameElement, HTMLIFrameElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLIFrameElement) generate_binding_object_htmlelement!(HTMLIFrameElement)
generate_traceable_htmlelement!(HTMLIFrameElement) generate_traceable_htmlelement!(HTMLIFrameElement)
generate_cacheable_wrapper_htmlelement!(HTMLImageElement, HTMLImageElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLImageElement, HTMLImageElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLImageElement) generate_binding_object_htmlelement!(HTMLImageElement)
generate_traceable_htmlelement!(HTMLImageElement) generate_traceable_htmlelement!(HTMLImageElement)
generate_cacheable_wrapper_htmlelement!(HTMLInputElement, HTMLInputElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLInputElement, HTMLInputElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLInputElement) generate_binding_object_htmlelement!(HTMLInputElement)
generate_traceable_htmlelement!(HTMLInputElement) generate_traceable_htmlelement!(HTMLInputElement)
generate_cacheable_wrapper_htmlelement!(HTMLLabelElement, HTMLLabelElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLLabelElement, HTMLLabelElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLLabelElement) generate_binding_object_htmlelement!(HTMLLabelElement)
generate_traceable_htmlelement!(HTMLLabelElement) generate_traceable_htmlelement!(HTMLLabelElement)
generate_cacheable_wrapper_htmlelement!(HTMLLegendElement, HTMLLegendElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLLegendElement, HTMLLegendElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLLegendElement) generate_binding_object_htmlelement!(HTMLLegendElement)
generate_traceable_htmlelement!(HTMLLegendElement) generate_traceable_htmlelement!(HTMLLegendElement)
generate_cacheable_wrapper_htmlelement!(HTMLLIElement, HTMLLIElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLLIElement, HTMLLIElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLLIElement) generate_binding_object_htmlelement!(HTMLLIElement)
generate_traceable_htmlelement!(HTMLLIElement) generate_traceable_htmlelement!(HTMLLIElement)
generate_cacheable_wrapper_htmlelement!(HTMLLinkElement, HTMLLinkElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLLinkElement, HTMLLinkElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLLinkElement) generate_binding_object_htmlelement!(HTMLLinkElement)
generate_traceable_htmlelement!(HTMLLinkElement) generate_traceable_htmlelement!(HTMLLinkElement)
generate_cacheable_wrapper_htmlelement!(HTMLMapElement, HTMLMapElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLMapElement, HTMLMapElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLMapElement) generate_binding_object_htmlelement!(HTMLMapElement)
generate_traceable_htmlelement!(HTMLMapElement) generate_traceable_htmlelement!(HTMLMapElement)
generate_cacheable_wrapper_htmlelement!(HTMLMediaElement, HTMLMediaElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLMediaElement, HTMLMediaElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLMediaElement) generate_binding_object_htmlelement!(HTMLMediaElement)
generate_traceable_htmlelement!(HTMLMediaElement) generate_traceable_htmlelement!(HTMLMediaElement)
generate_cacheable_wrapper_htmlelement!(HTMLMetaElement, HTMLMetaElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLMetaElement, HTMLMetaElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLMetaElement) generate_binding_object_htmlelement!(HTMLMetaElement)
generate_traceable_htmlelement!(HTMLMetaElement) generate_traceable_htmlelement!(HTMLMetaElement)
generate_cacheable_wrapper_htmlelement!(HTMLMeterElement, HTMLMeterElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLMeterElement, HTMLMeterElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLMeterElement) generate_binding_object_htmlelement!(HTMLMeterElement)
generate_traceable_htmlelement!(HTMLMeterElement) generate_traceable_htmlelement!(HTMLMeterElement)
generate_cacheable_wrapper_htmlelement!(HTMLModElement, HTMLModElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLModElement, HTMLModElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLModElement) generate_binding_object_htmlelement!(HTMLModElement)
generate_traceable_htmlelement!(HTMLModElement) generate_traceable_htmlelement!(HTMLModElement)
generate_cacheable_wrapper_htmlelement!(HTMLObjectElement, HTMLObjectElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLObjectElement, HTMLObjectElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLObjectElement) generate_binding_object_htmlelement!(HTMLObjectElement)
generate_traceable_htmlelement!(HTMLObjectElement) generate_traceable_htmlelement!(HTMLObjectElement)
generate_cacheable_wrapper_htmlelement!(HTMLOListElement, HTMLOListElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLOListElement, HTMLOListElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLOListElement) generate_binding_object_htmlelement!(HTMLOListElement)
generate_traceable_htmlelement!(HTMLOListElement) generate_traceable_htmlelement!(HTMLOListElement)
generate_cacheable_wrapper_htmlelement!(HTMLOptGroupElement, HTMLOptGroupElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLOptGroupElement, HTMLOptGroupElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLOptGroupElement) generate_binding_object_htmlelement!(HTMLOptGroupElement)
generate_traceable_htmlelement!(HTMLOptGroupElement) generate_traceable_htmlelement!(HTMLOptGroupElement)
generate_cacheable_wrapper_htmlelement!(HTMLOptionElement, HTMLOptionElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLOptionElement, HTMLOptionElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLOptionElement) generate_binding_object_htmlelement!(HTMLOptionElement)
generate_traceable_htmlelement!(HTMLOptionElement) generate_traceable_htmlelement!(HTMLOptionElement)
generate_cacheable_wrapper_htmlelement!(HTMLOutputElement, HTMLOutputElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLOutputElement, HTMLOutputElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLOutputElement) generate_binding_object_htmlelement!(HTMLOutputElement)
generate_traceable_htmlelement!(HTMLOutputElement) generate_traceable_htmlelement!(HTMLOutputElement)
generate_cacheable_wrapper_htmlelement!(HTMLParagraphElement, HTMLParagraphElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLParagraphElement, HTMLParagraphElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLParagraphElement) generate_binding_object_htmlelement!(HTMLParagraphElement)
generate_traceable_htmlelement!(HTMLParagraphElement) generate_traceable_htmlelement!(HTMLParagraphElement)
generate_cacheable_wrapper_htmlelement!(HTMLParamElement, HTMLParamElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLParamElement, HTMLParamElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLParamElement) generate_binding_object_htmlelement!(HTMLParamElement)
generate_traceable_htmlelement!(HTMLParamElement) generate_traceable_htmlelement!(HTMLParamElement)
generate_cacheable_wrapper_htmlelement!(HTMLPreElement, HTMLPreElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLPreElement, HTMLPreElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLPreElement) generate_binding_object_htmlelement!(HTMLPreElement)
generate_traceable_htmlelement!(HTMLPreElement) generate_traceable_htmlelement!(HTMLPreElement)
generate_cacheable_wrapper_htmlelement!(HTMLProgressElement, HTMLProgressElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLProgressElement, HTMLProgressElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLProgressElement) generate_binding_object_htmlelement!(HTMLProgressElement)
generate_traceable_htmlelement!(HTMLProgressElement) generate_traceable_htmlelement!(HTMLProgressElement)
generate_cacheable_wrapper_htmlelement!(HTMLQuoteElement, HTMLQuoteElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLQuoteElement, HTMLQuoteElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLQuoteElement) generate_binding_object_htmlelement!(HTMLQuoteElement)
generate_traceable_htmlelement!(HTMLQuoteElement) generate_traceable_htmlelement!(HTMLQuoteElement)
generate_cacheable_wrapper_htmlelement!(HTMLScriptElement, HTMLScriptElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLScriptElement, HTMLScriptElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLScriptElement) generate_binding_object_htmlelement!(HTMLScriptElement)
generate_traceable_htmlelement!(HTMLScriptElement) generate_traceable_htmlelement!(HTMLScriptElement)
generate_cacheable_wrapper_htmlelement!(HTMLSelectElement, HTMLSelectElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLSelectElement, HTMLSelectElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLSelectElement) generate_binding_object_htmlelement!(HTMLSelectElement)
generate_traceable_htmlelement!(HTMLSelectElement) generate_traceable_htmlelement!(HTMLSelectElement)
generate_cacheable_wrapper_htmlelement!(HTMLSourceElement, HTMLSourceElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLSourceElement, HTMLSourceElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLSourceElement) generate_binding_object_htmlelement!(HTMLSourceElement)
generate_traceable_htmlelement!(HTMLSourceElement) generate_traceable_htmlelement!(HTMLSourceElement)
generate_cacheable_wrapper_htmlelement!(HTMLSpanElement, HTMLSpanElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLSpanElement, HTMLSpanElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLSpanElement) generate_binding_object_htmlelement!(HTMLSpanElement)
generate_traceable_htmlelement!(HTMLSpanElement) generate_traceable_htmlelement!(HTMLSpanElement)
generate_cacheable_wrapper_htmlelement!(HTMLStyleElement, HTMLStyleElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLStyleElement, HTMLStyleElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLStyleElement) generate_binding_object_htmlelement!(HTMLStyleElement)
generate_traceable_htmlelement!(HTMLStyleElement) generate_traceable_htmlelement!(HTMLStyleElement)
generate_cacheable_wrapper_htmlelement!(HTMLTableElement, HTMLTableElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTableElement, HTMLTableElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTableElement) generate_binding_object_htmlelement!(HTMLTableElement)
generate_traceable_htmlelement!(HTMLTableElement) generate_traceable_htmlelement!(HTMLTableElement)
generate_cacheable_wrapper_htmlelement!(HTMLTableCaptionElement, HTMLTableCaptionElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTableCaptionElement, HTMLTableCaptionElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTableCaptionElement) generate_binding_object_htmlelement!(HTMLTableCaptionElement)
generate_traceable_htmlelement!(HTMLTableCaptionElement) generate_traceable_htmlelement!(HTMLTableCaptionElement)
generate_cacheable_wrapper_htmlelement!(HTMLTableCellElement, HTMLTableCellElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTableCellElement, HTMLTableCellElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTableCellElement) generate_binding_object_htmlelement!(HTMLTableCellElement)
generate_traceable_htmlelement!(HTMLTableCellElement) generate_traceable_htmlelement!(HTMLTableCellElement)
generate_cacheable_wrapper_htmlelement!(HTMLTableDataCellElement, HTMLTableDataCellElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTableDataCellElement) generate_cacheable_wrapper_htmltablecellelement!(HTMLTableDataCellElement, HTMLTableDataCellElementBinding::Wrap)
generate_traceable_htmlelement!(HTMLTableDataCellElement) generate_binding_object_htmltablecellelement!(HTMLTableDataCellElement)
generate_cacheable_wrapper_htmlelement!(HTMLTableHeaderCellElement, HTMLTableHeaderCellElementBinding::Wrap) generate_traceable_htmltablecellelement!(HTMLTableDataCellElement)
generate_binding_object_htmlelement!(HTMLTableHeaderCellElement)
generate_traceable_htmlelement!(HTMLTableHeaderCellElement) generate_cacheable_wrapper_htmltablecellelement!(HTMLTableHeaderCellElement, HTMLTableHeaderCellElementBinding::Wrap)
generate_binding_object_htmltablecellelement!(HTMLTableHeaderCellElement)
generate_traceable_htmltablecellelement!(HTMLTableHeaderCellElement)
generate_cacheable_wrapper_htmlelement!(HTMLTableColElement, HTMLTableColElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTableColElement, HTMLTableColElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTableColElement) generate_binding_object_htmlelement!(HTMLTableColElement)
generate_traceable_htmlelement!(HTMLTableColElement) generate_traceable_htmlelement!(HTMLTableColElement)
generate_cacheable_wrapper_htmlelement!(HTMLTableRowElement, HTMLTableRowElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTableRowElement, HTMLTableRowElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTableRowElement) generate_binding_object_htmlelement!(HTMLTableRowElement)
generate_traceable_htmlelement!(HTMLTableRowElement) generate_traceable_htmlelement!(HTMLTableRowElement)
generate_cacheable_wrapper_htmlelement!(HTMLTableSectionElement, HTMLTableSectionElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTableSectionElement, HTMLTableSectionElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTableSectionElement) generate_binding_object_htmlelement!(HTMLTableSectionElement)
generate_traceable_htmlelement!(HTMLTableSectionElement) generate_traceable_htmlelement!(HTMLTableSectionElement)
generate_cacheable_wrapper_htmlelement!(HTMLTemplateElement, HTMLTemplateElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTemplateElement, HTMLTemplateElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTemplateElement) generate_binding_object_htmlelement!(HTMLTemplateElement)
generate_traceable_htmlelement!(HTMLTemplateElement) generate_traceable_htmlelement!(HTMLTemplateElement)
generate_cacheable_wrapper_htmlelement!(HTMLTextAreaElement, HTMLTextAreaElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTextAreaElement, HTMLTextAreaElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTextAreaElement) generate_binding_object_htmlelement!(HTMLTextAreaElement)
generate_traceable_htmlelement!(HTMLTextAreaElement) generate_traceable_htmlelement!(HTMLTextAreaElement)
generate_cacheable_wrapper_htmlelement!(HTMLTitleElement, HTMLTitleElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTitleElement, HTMLTitleElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTitleElement) generate_binding_object_htmlelement!(HTMLTitleElement)
generate_traceable_htmlelement!(HTMLTitleElement) generate_traceable_htmlelement!(HTMLTitleElement)
generate_cacheable_wrapper_htmlelement!(HTMLTimeElement, HTMLTimeElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTimeElement, HTMLTimeElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTimeElement) generate_binding_object_htmlelement!(HTMLTimeElement)
generate_traceable_htmlelement!(HTMLTimeElement) generate_traceable_htmlelement!(HTMLTimeElement)
generate_cacheable_wrapper_htmlelement!(HTMLTrackElement, HTMLTrackElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLTrackElement, HTMLTrackElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLTrackElement) generate_binding_object_htmlelement!(HTMLTrackElement)
generate_traceable_htmlelement!(HTMLTrackElement) generate_traceable_htmlelement!(HTMLTrackElement)
generate_cacheable_wrapper_htmlelement!(HTMLUListElement, HTMLUListElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLUListElement, HTMLUListElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLUListElement) generate_binding_object_htmlelement!(HTMLUListElement)
generate_traceable_htmlelement!(HTMLUListElement) generate_traceable_htmlelement!(HTMLUListElement)
generate_cacheable_wrapper_htmlelement!(HTMLUnknownElement, HTMLUnknownElementBinding::Wrap) generate_cacheable_wrapper_htmlelement!(HTMLUnknownElement, HTMLUnknownElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLUnknownElement) generate_binding_object_htmlelement!(HTMLUnknownElement)
generate_traceable_htmlelement!(HTMLUnknownElement) generate_traceable_htmlelement!(HTMLUnknownElement)
generate_cacheable_wrapper_htmlelement!(HTMLVideoElement, HTMLVideoElementBinding::Wrap)
generate_binding_object_htmlelement!(HTMLVideoElement)
generate_traceable_htmlelement!(HTMLVideoElement)
generate_cacheable_wrapper_htmlmediaelement!(HTMLVideoElement, HTMLVideoElementBinding::Wrap)
generate_binding_object_htmlmediaelement!(HTMLVideoElement)
generate_traceable_htmlmediaelement!(HTMLVideoElement)
generate_cacheable_wrapper!(HTMLElement, HTMLElementBinding::Wrap)
generate_binding_object!(HTMLElement)
generate_traceable!(HTMLElement) generate_traceable!(HTMLElement)
generate_binding_object_node!(Element)
generate_traceable_node!(Element) generate_traceable_node!(Element)
generate_binding_object_node!(CharacterData)
generate_traceable_node!(CharacterData) generate_traceable_node!(CharacterData)

View file

@ -5,7 +5,7 @@
//! DOM bindings for `CharacterData`. //! DOM bindings for `CharacterData`.
use dom::bindings::utils::{DOMString, ErrorResult, Fallible}; use dom::bindings::utils::{DOMString, ErrorResult, Fallible};
use dom::bindings::utils::{BindingObject, Reflectable, Reflector}; use dom::bindings::utils::{Reflectable, Reflector};
use dom::document::AbstractDocument; use dom::document::AbstractDocument;
use dom::node::{Node, NodeTypeId, ScriptView}; use dom::node::{Node, NodeTypeId, ScriptView};
use js::jsapi::{JSObject, JSContext}; use js::jsapi::{JSObject, JSContext};
@ -71,9 +71,3 @@ impl Reflectable for CharacterData {
fail!(~"need to implement wrapping"); fail!(~"need to implement wrapping");
} }
} }
impl BindingObject for CharacterData {
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.node.GetParentObject(cx)
}
}

View file

@ -4,7 +4,7 @@
//! Element nodes. //! Element nodes.
use dom::bindings::utils::{BindingObject, Reflectable, DOMString, ErrorResult, Fallible, Reflector}; use dom::bindings::utils::{Reflectable, DOMString, ErrorResult, Fallible, Reflector};
use dom::bindings::utils::{null_str_as_empty, null_str_as_empty_ref}; use dom::bindings::utils::{null_str_as_empty, null_str_as_empty_ref};
use dom::htmlcollection::HTMLCollection; use dom::htmlcollection::HTMLCollection;
use dom::clientrect::ClientRect; use dom::clientrect::ClientRect;
@ -43,12 +43,6 @@ impl Reflectable for Element {
} }
} }
impl BindingObject for Element {
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.node.GetParentObject(cx)
}
}
#[deriving(Eq)] #[deriving(Eq)]
pub enum ElementTypeId { pub enum ElementTypeId {
HTMLElementTypeId, HTMLElementTypeId,

View file

@ -5,7 +5,7 @@
use dom::htmlmediaelement::HTMLMediaElement; use dom::htmlmediaelement::HTMLMediaElement;
pub struct HTMLAudioElement { pub struct HTMLAudioElement {
htmlelement: HTMLMediaElement htmlmediaelement: HTMLMediaElement
} }
impl HTMLAudioElement { impl HTMLAudioElement {

View file

@ -2,13 +2,11 @@
* 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::HTMLElementBinding;
use dom::bindings::utils::{DOMString, ErrorResult, Fallible}; use dom::bindings::utils::{DOMString, ErrorResult, Fallible};
use dom::bindings::utils::{Reflectable, BindingObject, Reflector};
use dom::document::AbstractDocument; use dom::document::AbstractDocument;
use dom::element::{Element, ElementTypeId}; use dom::element::{Element, ElementTypeId};
use dom::node::{AbstractNode, ScriptView}; use dom::node::{AbstractNode, ScriptView};
use js::jsapi::{JSObject, JSContext, JSVal}; use js::jsapi::{JSContext, JSVal};
use js::JSVAL_NULL; use js::JSVAL_NULL;
pub struct HTMLElement { pub struct HTMLElement {
@ -148,24 +146,3 @@ impl HTMLElement {
0 0
} }
} }
impl Reflectable for HTMLElement {
fn reflector<'a>(&'a self) -> &'a Reflector {
self.element.reflector()
}
fn mut_reflector<'a>(&'a mut self) -> &'a mut Reflector {
self.element.mut_reflector()
}
fn wrap_object_shared(@mut self, cx: *JSContext, scope: *JSObject) -> *JSObject {
let mut unused = false;
HTMLElementBinding::Wrap(cx, scope, self, &mut unused)
}
}
impl BindingObject for HTMLElement {
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.element.GetParentObject(cx)
}
}

View file

@ -154,3 +154,4 @@ impl HTMLMediaElement {
Ok(()) Ok(())
} }
} }

View file

@ -140,3 +140,4 @@ impl HTMLTableCellElement {
Ok(()) Ok(())
} }
} }

View file

@ -5,5 +5,5 @@
use dom::htmltablecellelement::HTMLTableCellElement; use dom::htmltablecellelement::HTMLTableCellElement;
pub struct HTMLTableDataCellElement { pub struct HTMLTableDataCellElement {
htmlelement: HTMLTableCellElement, htmltablecellelement: HTMLTableCellElement,
} }

View file

@ -5,5 +5,5 @@
use dom::htmltablecellelement::HTMLTableCellElement; use dom::htmltablecellelement::HTMLTableCellElement;
pub struct HTMLTableHeaderCellElement { pub struct HTMLTableHeaderCellElement {
htmlelement: HTMLTableCellElement, htmltablecellelement: HTMLTableCellElement,
} }

View file

@ -6,7 +6,7 @@ use dom::bindings::utils::{DOMString, ErrorResult};
use dom::htmlmediaelement::HTMLMediaElement; use dom::htmlmediaelement::HTMLMediaElement;
pub struct HTMLVideoElement { pub struct HTMLVideoElement {
htmlelement: HTMLMediaElement htmlmediaelement: HTMLMediaElement
} }
impl HTMLVideoElement { impl HTMLVideoElement {

View file

@ -61,7 +61,7 @@ macro_rules! handle_htmlmediaelement(
($cx: expr, $tag:expr, $string:expr, $type_id:expr, $ctor:ident) => ( ($cx: expr, $tag:expr, $string:expr, $type_id:expr, $ctor:ident) => (
if eq_slice($tag, $string) { if eq_slice($tag, $string) {
let _element = @$ctor { let _element = @$ctor {
htmlelement: HTMLMediaElement::new($type_id, ($tag).to_str(), document) htmlmediaelement: HTMLMediaElement::new($type_id, ($tag).to_str(), document)
}; };
unsafe { unsafe {
return Node::as_abstract_node(cx, _element); return Node::as_abstract_node(cx, _element);
@ -73,7 +73,7 @@ macro_rules! handle_htmltablecellelement(
($cx: expr, $tag:expr, $string:expr, $type_id:expr, $ctor:ident) => ( ($cx: expr, $tag:expr, $string:expr, $type_id:expr, $ctor:ident) => (
if eq_slice($tag, $string) { if eq_slice($tag, $string) {
let _element = @$ctor { let _element = @$ctor {
htmlelement: HTMLTableCellElement::new($type_id, ($tag).to_str(), document) htmltablecellelement: HTMLTableCellElement::new($type_id, ($tag).to_str(), document)
}; };
unsafe { unsafe {
return Node::as_abstract_node(cx, _element); return Node::as_abstract_node(cx, _element);