element foo implements JavascriptConstructor {
public function js() {
return jsprintf('new FooController(%d, %d)', 1, 2);
}
protected function render() {
$root =
;
onloadRegister('%O.init(%O)', $this, $root);
return $root;
}
}
$foo = ;
onloadRegister('GiveMeAFoo(%O)', $foo);
echo $foo;
---
JSCC={
ctors: [function() {
return new FooController(1, 2);
}],
refs: {},
get: function(key) {
if (refs[key]) {
return refs[key];
} else {
refs[key] = ctors[key]();
delete ctors[key];
return refs[key];
}
}
}