aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/bindings/interface.rs
diff options
context:
space:
mode:
authorapopiak <alexander.popiak@gmail.com>2016-01-13 18:59:15 +0100
committerapopiak <alexander.popiak@gmail.com>2016-01-14 12:51:16 +0100
commite2160cb3b92843633659d4bc099e6c3d0967f5fa (patch)
tree6eee3b053474755aaa269cde3cb8b8f3b1d06f4b /components/script/dom/bindings/interface.rs
parent0b5dda3e9c38f6cd4ec9b82f023bf3698addc65f (diff)
downloadservo-e2160cb3b92843633659d4bc099e6c3d0967f5fa.tar.gz
servo-e2160cb3b92843633659d4bc099e6c3d0967f5fa.zip
implement NonCallbackInterfaceObjectClass::as_jsclass()
Diffstat (limited to 'components/script/dom/bindings/interface.rs')
-rw-r--r--components/script/dom/bindings/interface.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/components/script/dom/bindings/interface.rs b/components/script/dom/bindings/interface.rs
index 96f4d7c470a..457eba22236 100644
--- a/components/script/dom/bindings/interface.rs
+++ b/components/script/dom/bindings/interface.rs
@@ -105,6 +105,13 @@ impl NonCallbackInterfaceObjectClass {
},
}
}
+
+ /// cast own reference to `JSClass` reference
+ pub fn as_jsclass(&self) -> &JSClass {
+ unsafe {
+ &*(self as *const _ as *const JSClass)
+ }
+ }
}
/// Create and define the interface object of a callback interface.
@@ -148,7 +155,7 @@ pub unsafe fn create_noncallback_interface_object(
rval: MutableHandleObject) {
create_object(cx,
proto,
- &*(class as *const _ as *const JSClass),
+ class.as_jsclass(),
static_methods,
static_properties,
constants,