On 7/12/13 5:38 PM, Robert O'Callahan wrote:
What would the developer experience be like with this approach? I mean,
what kind of code would developers have to write to declare classes
managed by JS and to declare references to such objects?
I suspect it would be something like:
#[deriving(JsManagable)]
struct MyObject {
field_a: int,
field_b: float,
field_c: Option<JsManaged<OtherObject>>,
...
}
fn f(x: JsManaged<MyObject>) {
... do something with x ...
// make a loop, why not?
x.mutate().field_c = Some(x.clone());
}
fn g(x: &JsManaged<MyObject>) {
... do something with x ...
}
fn main() {
let object = new(JsManaged) MyObject {
field_a: 10,
field_b: 20.0,
field_c: None,
...
};
f(object.clone()); // make a new reference
g(&object); // or don't and just borrow
}
Patrick
_______________________________________________
dev-servo mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-servo