json-joy
Version:
Collection of libraries for building collaborative editing apps.
21 lines (20 loc) • 601 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.walk = exports.walk0 = void 0;
const iterator_1 = require("../util/iterator");
const walk0 = (node) => {
const stack = [node];
return () => {
const node = stack.pop();
if (!node)
return;
if (typeof node === 'string')
return node;
for (let i = node.length - 1; i >= 2; i--)
stack.push(node[i]);
return node;
};
};
exports.walk0 = walk0;
const walk = (node) => (0, iterator_1.iter)((0, exports.walk0)(node));
exports.walk = walk;
;