Files
scriptc/tests/corpus/class-factory-parameter-base.mjs
Chris Tate 2069684b40 Expand static Effect support across common APIs (#598)
* Expand static Effect support across common APIs

* Preserve compiler parity across expanded Effect patterns

* Fix compiler regressions exposed by Effect coverage

* Bound shared type conversion traversal

* Clarify conversion contracts and tidy fixtures

* Run every Effect fixture in CI shards

* Preserve inferred array assignments in concurrent Effect programs

* Record inferred array fixture compiler ordering
2026-10-01 02:49:31 -05:00

18 lines
580 B
JavaScript

function Base(props) { Object.assign(this, props); }
function factory({ Base, label }) {
return class extends Base {
static label = label;
constructor(props) { super(props); }
};
}
const First = factory({ Base, label: "first" });
const Second = factory({ Base, label: "second" });
console.log(First.label, Second.label, new First({ value: 42 }).value);
function named(label) {
class Named extends First {}
Named.prototype.label = label;
return Named;
}
const Named = named("prototype");
console.log(new Named({ value: 7 }).label, new Named({ value: 7 }).value);