mirror of
https://github.com/servo/servo.git
synced 2025-06-20 07:08:59 +01:00
Introduce mutable/immutable variants of reflector() with named lifetimes, and kill unsafe casts.
This commit is contained in:
parent
e6be738d97
commit
c4bbc4cd37
24 changed files with 158 additions and 87 deletions
|
@ -5,7 +5,6 @@
|
|||
use dom::bindings::utils::{Reflector, BindingObject, Reflectable};
|
||||
use dom::bindings::codegen::ValidityStateBinding;
|
||||
use js::jsapi::{JSContext, JSObject};
|
||||
use std::cast;
|
||||
|
||||
pub struct ValidityState {
|
||||
reflector_: Reflector,
|
||||
|
@ -60,8 +59,12 @@ impl ValidityState {
|
|||
}
|
||||
|
||||
impl Reflectable for ValidityState {
|
||||
fn reflector(&mut self) -> &mut Reflector {
|
||||
unsafe { cast::transmute(&self.reflector_) }
|
||||
fn reflector<'a>(&'a self) -> &'a Reflector {
|
||||
&self.reflector_
|
||||
}
|
||||
|
||||
fn mut_reflector<'a>(&'a mut self) -> &'a mut Reflector {
|
||||
&mut self.reflector_
|
||||
}
|
||||
|
||||
fn wrap_object_shared(@mut self, cx: *JSContext, scope: *JSObject) -> *JSObject {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue