Some checks failed
ci / fast (linux) (push) Failing after 13m32s
Implements full class support: prototype-chain-based inheritance on JsObject, class/extends/super/static/instanceof keywords, parser and VM execution for class declarations and expressions, super() constructor calls and super.method() dispatch via dedicated SuperInfo fields (not user-observable properties), and instanceof operator with prototype chain walking. Includes depth guards, Box<JsValue> in RuntimeError::Thrown to satisfy clippy result_large_err, and 11 JS262 conformance tests. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
18 lines
360 B
JavaScript
18 lines
360 B
JavaScript
// Static methods are called on the class, not on instances.
|
|
class Counter {
|
|
constructor(n) {
|
|
this.count = n;
|
|
}
|
|
static create() {
|
|
return new Counter(0);
|
|
}
|
|
increment() {
|
|
this.count = this.count + 1;
|
|
return this.count;
|
|
}
|
|
}
|
|
|
|
var c = Counter.create();
|
|
console.log(c.increment());
|
|
console.log(c.increment());
|