nani
Version:
Better error handling for Node
19 lines • 625 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.iterateInternal = void 0;
function* iterateInternal(err, parent = null, inArray = false, seen = new Set()) {
if (seen.has(err))
return;
seen = new Set(seen).add(err);
yield { err, parent, inArray };
const { errors, cause } = err;
if (errors) {
for (const e of errors)
yield* iterateInternal(e, err, true, seen);
}
else if (cause) {
yield* iterateInternal(cause, err, false, seen);
}
}
exports.iterateInternal = iterateInternal;
//# sourceMappingURL=iterate-internal.js.map