Remove Reflectable::wrap_object_shared.

This commit is contained in:
Ms2ger 2013-11-03 11:52:39 +01:00
parent c693cb185c
commit 53731b62ae
23 changed files with 18 additions and 123 deletions

View file

@ -3,10 +3,9 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::types::*;
use dom::bindings::codegen::*;
use dom::bindings::utils::{Reflectable, Reflector, Traceable};
use js::jsapi::{JSContext, JSObject, JSTracer};
use js::jsapi::{JSContext, JSTracer};
// generate_cacheable_wrapper
macro_rules! generate_cacheable_wrapper(
@ -50,10 +49,6 @@ macro_rules! generate_cacheable_wrapper_base(
self.$parent.mut_reflector()
}
fn wrap_object_shared(@mut self, cx: *JSContext, scope: *JSObject) -> *JSObject {
$wrap(cx, scope, self)
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.$parent.GetParentObject(cx)
}

View file

@ -9,7 +9,7 @@ use dom::node::{AbstractNode, ScriptView};
use std::cast;
use std::libc;
use std::ptr;
use js::jsapi::{JSContext, JSObject, JSTracer, JSTRACE_OBJECT, JS_CallTracer};
use js::jsapi::{JSContext, JSTracer, JSTRACE_OBJECT, JS_CallTracer};
use servo_util::tree::TreeNodeRef;
impl Reflectable for AbstractNode<ScriptView> {
@ -21,10 +21,6 @@ impl Reflectable for AbstractNode<ScriptView> {
self.mut_node().mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
fail!(~"need to implement wrapping");
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.node().GetParentObject(cx)
}

View file

@ -541,7 +541,6 @@ pub fn initialize_global(global: *JSObject) {
pub trait Reflectable {
fn reflector<'a>(&'a self) -> &'a Reflector;
fn mut_reflector<'a>(&'a mut self) -> &'a mut Reflector;
fn wrap_object_shared(@mut self, cx: *JSContext, scope: *JSObject) -> *JSObject;
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable>;
}

View file

@ -7,7 +7,7 @@ use dom::bindings::utils::Fallible;
use dom::bindings::codegen::BlobBinding;
use dom::window::Window;
use js::jsapi::{JSContext, JSObject};
use js::jsapi::JSContext;
pub struct Blob {
reflector_: Reflector,
@ -42,10 +42,6 @@ impl Reflectable for Blob {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.window as @mut Reflectable)
}

View file

@ -8,7 +8,8 @@ use dom::bindings::utils::{DOMString, ErrorResult, Fallible};
use dom::bindings::utils::{Reflectable, Reflector};
use dom::document::AbstractDocument;
use dom::node::{Node, NodeTypeId, ScriptView};
use js::jsapi::{JSObject, JSContext};
use js::jsapi::JSContext;
pub struct CharacterData {
node: Node<ScriptView>,
@ -67,10 +68,6 @@ impl Reflectable for CharacterData {
self.node.mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
fail!(~"need to implement wrapping");
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.node.GetParentObject(cx)
}

View file

@ -6,7 +6,7 @@ use dom::bindings::codegen::ClientRectBinding;
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::window::Window;
use js::jsapi::{JSObject, JSContext};
use js::jsapi::JSContext;
pub struct ClientRect {
reflector_: Reflector,
@ -72,10 +72,6 @@ impl Reflectable for ClientRect {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.window as @mut Reflectable)
}

View file

@ -7,7 +7,7 @@ use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::clientrect::ClientRect;
use dom::window::Window;
use js::jsapi::{JSObject, JSContext};
use js::jsapi::JSContext;
pub struct ClientRectList {
reflector_: Reflector,
@ -58,10 +58,6 @@ impl Reflectable for ClientRectList {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.window as @mut Reflectable)
}

View file

@ -160,10 +160,6 @@ impl Reflectable for AbstractDocument {
self.mut_document().mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!()
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.document().GetParentObject(cx)
}
@ -187,10 +183,6 @@ impl Reflectable for Document {
self.node.mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!()
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.window as @mut Reflectable)
}

View file

@ -10,7 +10,7 @@ use dom::document::{AbstractDocument, Document, XML};
use dom::htmldocument::HTMLDocument;
use dom::window::Window;
use js::jsapi::{JSContext, JSObject};
use js::jsapi::JSContext;
pub struct DOMParser {
owner: @mut Window, //XXXjdm Document instead?
@ -61,10 +61,6 @@ impl Reflectable for DOMParser {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.owner as @mut Reflectable)
}

View file

@ -16,7 +16,7 @@ use layout_interface::{ContentBoxesResponse};
use style;
use servo_util::tree::{TreeNodeRef, ElementLike};
use js::jsapi::{JSContext, JSObject};
use js::jsapi::JSContext;
use std::comm;
use std::hashmap::HashMap;
@ -39,10 +39,6 @@ impl Reflectable for Element {
self.node.mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
fail!("no wrapping")
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.node.GetParentObject(cx)
}

View file

@ -133,10 +133,6 @@ impl Reflectable for AbstractEvent {
self.mut_event().mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
fail!(~"doesn't make any sense");
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.event().GetParentObject(cx)
}
@ -281,10 +277,6 @@ impl Reflectable for Event {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!()
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
let page = page_from_context(cx);
unsafe {

View file

@ -2,7 +2,6 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::bindings::codegen::EventTargetBinding;
use dom::bindings::utils::{Reflectable, Reflector, DOMString, Fallible, DerivedWrapper};
use dom::bindings::utils::{null_str_as_word_null, InvalidState};
use dom::bindings::codegen::EventListenerBinding::EventListener;
@ -119,10 +118,6 @@ impl Reflectable for AbstractEventTarget {
self.mut_eventtarget().mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!()
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.eventtarget().GetParentObject(cx)
}
@ -205,10 +200,6 @@ impl Reflectable for EventTarget {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, cx: *JSContext, scope: *JSObject) -> *JSObject {
EventTargetBinding::Wrap(cx, scope, self)
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
let page = page_from_context(cx);
// TODO(tkuehn): This only handles top-level pages. Needs to handle subframes.

View file

@ -8,7 +8,7 @@ use dom::bindings::codegen::FormDataBinding;
use dom::blob::Blob;
use dom::window::Window;
use js::jsapi::{JSObject, JSContext};
use js::jsapi::JSContext;
use std::hashmap::HashMap;
@ -58,10 +58,6 @@ impl Reflectable for FormData {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.window as @mut Reflectable)
}

View file

@ -69,10 +69,6 @@ impl Reflectable for HTMLCollection {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.window as @mut Reflectable)
}

View file

@ -10,7 +10,7 @@ use dom::htmlcollection::HTMLCollection;
use dom::node::{AbstractNode, ScriptView, ElementNodeTypeId};
use dom::window::Window;
use js::jsapi::{JSObject, JSContext, JSTracer};
use js::jsapi::{JSContext, JSTracer};
use servo_util::tree::{TreeNodeRef, ElementLike};
@ -89,10 +89,6 @@ impl Reflectable for HTMLDocument {
self.parent.mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!()
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.parent.GetParentObject(cx)
}

View file

@ -11,7 +11,7 @@ use dom::uievent::UIEvent;
use dom::window::Window;
use dom::windowproxy::WindowProxy;
use js::jsapi::{JSObject, JSContext};
use js::jsapi::JSContext;
pub struct MouseEvent {
parent: UIEvent,
@ -152,10 +152,6 @@ impl Reflectable for MouseEvent {
self.parent.mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!()
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.parent.GetParentObject(cx)
}

View file

@ -8,7 +8,7 @@ use dom::bindings::codegen::NavigatorBinding;
use dom::window::Window;
use script_task::{page_from_context};
use js::jsapi::{JSContext, JSObject};
use js::jsapi::JSContext;
pub struct Navigator {
reflector_: Reflector //XXXjdm cycle: window->navigator->window
@ -99,10 +99,6 @@ impl Reflectable for Navigator {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
let page = page_from_context(cx);
unsafe {

View file

@ -1057,10 +1057,6 @@ impl Reflectable for Node<ScriptView> {
self.eventtarget.mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
fail!(~"need to implement wrapping");
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
match self.parent_node {
Some(node) => Some(unsafe {node.as_cacheable_wrapper()}),

View file

@ -7,7 +7,7 @@ use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::node::{AbstractNode, ScriptView};
use dom::window::Window;
use js::jsapi::{JSObject, JSContext};
use js::jsapi::JSContext;
enum NodeListType {
Simple(~[AbstractNode<ScriptView>]),
@ -75,10 +75,6 @@ impl Reflectable for NodeList {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.window as @mut Reflectable)
}

View file

@ -10,7 +10,7 @@ use dom::event::{AbstractEvent, Event, EventTypeId, UIEventTypeId};
use dom::window::Window;
use dom::windowproxy::WindowProxy;
use js::jsapi::{JSObject, JSContext};
use js::jsapi::JSContext;
pub struct UIEvent {
parent: Event,
@ -121,10 +121,6 @@ impl Reflectable for UIEvent {
self.parent.mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!()
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
self.parent.GetParentObject(cx)
}

View file

@ -5,7 +5,8 @@
use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};
use dom::bindings::codegen::ValidityStateBinding;
use dom::window::Window;
use js::jsapi::{JSContext, JSObject};
use js::jsapi::JSContext;
pub struct ValidityState {
reflector_: Reflector,
@ -75,10 +76,6 @@ impl Reflectable for ValidityState {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!();
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
Some(self.window as @mut Reflectable)
}

View file

@ -148,10 +148,6 @@ impl Reflectable for Window {
self.eventtarget.mut_reflector()
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
unreachable!()
}
fn GetParentObject(&self, _cx: *JSContext) -> Option<@mut Reflectable> {
None
}

View file

@ -5,7 +5,7 @@
use dom::bindings::utils::{Reflectable, Reflector};
use script_task::page_from_context;
use js::jsapi::{JSContext, JSObject};
use js::jsapi::JSContext;
pub struct WindowProxy {
reflector_: Reflector
@ -17,10 +17,6 @@ impl WindowProxy {
reflector_: Reflector::new()
}
}
pub fn init_wrapper(@mut self, cx: *JSContext, scope: *JSObject) {
self.wrap_object_shared(cx, scope);
}
}
impl Reflectable for WindowProxy {
@ -32,10 +28,6 @@ impl Reflectable for WindowProxy {
&mut self.reflector_
}
fn wrap_object_shared(@mut self, _cx: *JSContext, _scope: *JSObject) -> *JSObject {
fail!("not yet implemented")
}
fn GetParentObject(&self, cx: *JSContext) -> Option<@mut Reflectable> {
let page = page_from_context(cx);
unsafe {