Files
scriptc/tests/corpus/js-checked-array-iterator.js
Chris Tate c257368c5e Compile Effect generators statically (#589)
* Compile Effect generators statically

* test: declare the dormant array write's expected fence
2026-09-30 14:25:29 -05:00

21 lines
778 B
JavaScript

/** @param {unknown} value */
function checked(value) { return value; }
function iteratorOf(source) { return source[Symbol.iterator](); }
/** @type {number[]} */
const values = [1, 2];
const source = checked(values);
console.log(source[Symbol.iterator] === Array.prototype.values);
console.log(Symbol.iterator in source, Object.hasOwn(source, Symbol.iterator));
const iterator = iteratorOf(source);
console.log(iterator[Symbol.iterator]() === iterator);
console.log(iterator.next().value);
values.push(3);
console.log(iterator.next().value, iterator.next().value, iterator.next().done);
values.push(4);
console.log(iterator.next().done);
console.log(Array.from(source).join(","));
for (const value of source) {
console.log("live", value);
if (value === 1) values.push(5);
}