Files
scriptc/tests/corpus/checked-renderer-defaults.js
Chris Tate 97a489845a Preserve native values through renderer initialization
- Carry BigInts, Sets, and regular expressions through checked native storage without a JavaScript engine.
- Preserve dictionary aliases, spreads, frozen metadata, and fluent initialization helpers.
- Collect checked object and closure cycles while preserving live references.
2026-09-29 00:20:53 -05:00

18 lines
621 B
JavaScript

function defaults() { return { async: false, extensions: null }; }
let calls = 0;
function extensions() { calls++; return { renderers: {}, childTokens: {} }; }
class Renderer {
defaults = defaults();
constructor(...options) { this.use(...options); }
use(...options) {
const selected = this.defaults.extensions || extensions();
options.forEach(option => { this.defaults = option; });
console.log(Object.keys(selected.renderers).length);
return this;
}
}
const renderer = new Renderer();
console.log(renderer.defaults.async, renderer.defaults.extensions, calls);
renderer.use();
console.log(calls);