occam-languages 1.0.40 → 1.0.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/context.js CHANGED
@@ -62,8 +62,8 @@ class Context {
62
62
  const releaseContext = this.getReleaseContext();
63
63
  releaseContext.writeToLog(level, message);
64
64
  }
65
- break(node, lineIndex) {
66
- return this.context.break(node, lineIndex);
65
+ break(node, breakPoint, resume) {
66
+ return this.context.break(node, breakPoint, resume);
67
67
  }
68
68
  static fromNothing(Class, ...remainingArguments) {
69
69
  let context = remainingArguments.pop();
@@ -72,4 +72,4 @@ class Context {
72
72
  }
73
73
  }
74
74
 
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb250ZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBET1VCTEVfU1BBQ0UsIFRSQUNFX0xFVkVMLCBERUJVR19MRVZFTCwgSU5GT19MRVZFTCwgRVJST1JfTEVWRUwsIFdBUk5JTkdfTEVWRUwgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29udGV4dCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQpIHtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICB9XG5cbiAgZ2V0Q29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0O1xuICB9XG5cbiAgZ2V0RGVwdGgoKSB7XG4gICAgbGV0IGRlcHRoID0gdGhpcy5jb250ZXh0LmdldERlcHRoKCk7XG5cbiAgICBkZXB0aCsrO1xuXG4gICAgcmV0dXJuIGRlcHRoO1xuICB9XG5cbiAgaXNSZWxlYXNlZCgpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5pc1JlbGVhc2VkKCk7IH1cblxuICBpc1VucmVsZWFzZWQoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuaXNVbnJlbGVhc2VkKCk7IH1cblxuICBnZXRSZWxlYXNlQ29udGV4dCgpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRSZWxlYXNlQ29udGV4dCgpOyB9XG5cbiAgbm9kZXNBc1N0cmluZyhub2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQubm9kZXNBc1N0cmluZyhub2RlKTsgfVxuXG4gIG5vZGVBc1N0cmluZyhub2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpOyB9XG5cbiAgdHJhY2UobWVzc2FnZSkge1xuICAgIGNvbnN0IGxldmVsID0gVFJBQ0VfTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UpO1xuICB9XG5cbiAgZGVidWcobWVzc2FnZSkge1xuICAgIGNvbnN0IGxldmVsID0gREVCVUdfTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UpO1xuICB9XG5cbiAgaW5mbyhtZXNzYWdlKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBJTkZPX0xFVkVMO1xuXG4gICAgdGhpcy53cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlKTtcbiAgfVxuXG4gIHdhcm5pbmcobWVzc2FnZSkge1xuICAgIGNvbnN0IGxldmVsID0gV0FSTklOR19MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSk7XG4gIH1cblxuICBlcnJvcihtZXNzYWdlKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBFUlJPUl9MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSk7XG4gIH1cblxuICB3cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlKSB7XG4gICAgY29uc3QgZGVwdGggPSB0aGlzLmdldERlcHRoKCksXG4gICAgICAgICAgaW5kZW50ID0gRE9VQkxFX1NQQUNFLnJlcGVhdChkZXB0aCk7XG5cbiAgICBtZXNzYWdlID0gYCR7aW5kZW50fSR7bWVzc2FnZX1gOyAgLy8vXG5cbiAgICBjb25zdCByZWxlYXNlQ29udGV4dCA9IHRoaXMuZ2V0UmVsZWFzZUNvbnRleHQoKTtcblxuICAgIHJlbGVhc2VDb250ZXh0LndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UpO1xuICB9XG5cbiAgYnJlYWsobm9kZSwgbGluZUluZGV4KSB7IHJldHVybiB0aGlzLmNvbnRleHQuYnJlYWsobm9kZSwgbGluZUluZGV4KTsgfVxuXG4gIHN0YXRpYyBmcm9tTm90aGluZyhDbGFzcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IGNvbnRleHQgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCk7XG5cbiAgICBjb250ZXh0ID0gbmV3IENsYXNzKGNvbnRleHQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7ICAvLy9cblxuICAgIHJldHVybiBjb250ZXh0O1xuICB9XG59XG4iXSwibmFtZXMiOlsiQ29udGV4dCIsImNvbnRleHQiLCJnZXRDb250ZXh0IiwiZ2V0RGVwdGgiLCJkZXB0aCIsImlzUmVsZWFzZWQiLCJpc1VucmVsZWFzZWQiLCJnZXRSZWxlYXNlQ29udGV4dCIsIm5vZGVzQXNTdHJpbmciLCJub2RlIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJtZXNzYWdlIiwibGV2ZWwiLCJUUkFDRV9MRVZFTCIsIndyaXRlVG9Mb2ciLCJkZWJ1ZyIsIkRFQlVHX0xFVkVMIiwiaW5mbyIsIklORk9fTEVWRUwiLCJ3YXJuaW5nIiwiV0FSTklOR19MRVZFTCIsImVycm9yIiwiRVJST1JfTEVWRUwiLCJpbmRlbnQiLCJET1VCTEVfU1BBQ0UiLCJyZXBlYXQiLCJyZWxlYXNlQ29udGV4dCIsImJyZWFrIiwibGluZUluZGV4IiwiZnJvbU5vdGhpbmciLCJDbGFzcyIsInJlbWFpbmluZ0FyZ3VtZW50cyIsInBvcCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBSUE7OztlQUFxQkE7OzsyQkFGMEU7QUFFaEYsTUFBTUE7SUFDbkIsWUFBWUMsT0FBTyxDQUFFO1FBQ25CLElBQUksQ0FBQ0EsT0FBTyxHQUFHQTtJQUNqQjtJQUVBQyxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUNELE9BQU87SUFDckI7SUFFQUUsV0FBVztRQUNULElBQUlDLFFBQVEsSUFBSSxDQUFDSCxPQUFPLENBQUNFLFFBQVE7UUFFakNDO1FBRUEsT0FBT0E7SUFDVDtJQUVBQyxhQUFhO1FBQUUsT0FBTyxJQUFJLENBQUNKLE9BQU8sQ0FBQ0ksVUFBVTtJQUFJO0lBRWpEQyxlQUFlO1FBQUUsT0FBTyxJQUFJLENBQUNMLE9BQU8sQ0FBQ0ssWUFBWTtJQUFJO0lBRXJEQyxvQkFBb0I7UUFBRSxPQUFPLElBQUksQ0FBQ04sT0FBTyxDQUFDTSxpQkFBaUI7SUFBSTtJQUUvREMsY0FBY0MsSUFBSSxFQUFFO1FBQUUsT0FBTyxJQUFJLENBQUNSLE9BQU8sQ0FBQ08sYUFBYSxDQUFDQztJQUFPO0lBRS9EQyxhQUFhRCxJQUFJLEVBQUU7UUFBRSxPQUFPLElBQUksQ0FBQ1IsT0FBTyxDQUFDUyxZQUFZLENBQUNEO0lBQU87SUFFN0RFLE1BQU1DLE9BQU8sRUFBRTtRQUNiLE1BQU1DLFFBQVFDLHNCQUFXO1FBRXpCLElBQUksQ0FBQ0MsVUFBVSxDQUFDRixPQUFPRDtJQUN6QjtJQUVBSSxNQUFNSixPQUFPLEVBQUU7UUFDYixNQUFNQyxRQUFRSSxzQkFBVztRQUV6QixJQUFJLENBQUNGLFVBQVUsQ0FBQ0YsT0FBT0Q7SUFDekI7SUFFQU0sS0FBS04sT0FBTyxFQUFFO1FBQ1osTUFBTUMsUUFBUU0scUJBQVU7UUFFeEIsSUFBSSxDQUFDSixVQUFVLENBQUNGLE9BQU9EO0lBQ3pCO0lBRUFRLFFBQVFSLE9BQU8sRUFBRTtRQUNmLE1BQU1DLFFBQVFRLHdCQUFhO1FBRTNCLElBQUksQ0FBQ04sVUFBVSxDQUFDRixPQUFPRDtJQUN6QjtJQUVBVSxNQUFNVixPQUFPLEVBQUU7UUFDYixNQUFNQyxRQUFRVSxzQkFBVztRQUV6QixJQUFJLENBQUNSLFVBQVUsQ0FBQ0YsT0FBT0Q7SUFDekI7SUFFQUcsV0FBV0YsS0FBSyxFQUFFRCxPQUFPLEVBQUU7UUFDekIsTUFBTVIsUUFBUSxJQUFJLENBQUNELFFBQVEsSUFDckJxQixTQUFTQyx1QkFBWSxDQUFDQyxNQUFNLENBQUN0QjtRQUVuQ1EsVUFBVSxHQUFHWSxTQUFTWixTQUFTLEVBQUcsR0FBRztRQUVyQyxNQUFNZSxpQkFBaUIsSUFBSSxDQUFDcEIsaUJBQWlCO1FBRTdDb0IsZUFBZVosVUFBVSxDQUFDRixPQUFPRDtJQUNuQztJQUVBZ0IsTUFBTW5CLElBQUksRUFBRW9CLFNBQVMsRUFBRTtRQUFFLE9BQU8sSUFBSSxDQUFDNUIsT0FBTyxDQUFDMkIsS0FBSyxDQUFDbkIsTUFBTW9CO0lBQVk7SUFFckUsT0FBT0MsWUFBWUMsS0FBSyxFQUFFLEdBQUdDLGtCQUFrQixFQUFFO1FBQy9DLElBQUkvQixVQUFVK0IsbUJBQW1CQyxHQUFHO1FBRXBDaEMsVUFBVSxJQUFJOEIsTUFBTTlCLFlBQVkrQixxQkFBc0IsR0FBRztRQUV6RCxPQUFPL0I7SUFDVDtBQUNGIn0=
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb250ZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBET1VCTEVfU1BBQ0UsIFRSQUNFX0xFVkVMLCBERUJVR19MRVZFTCwgSU5GT19MRVZFTCwgRVJST1JfTEVWRUwsIFdBUk5JTkdfTEVWRUwgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29udGV4dCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQpIHtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICB9XG5cbiAgZ2V0Q29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0O1xuICB9XG5cbiAgZ2V0RGVwdGgoKSB7XG4gICAgbGV0IGRlcHRoID0gdGhpcy5jb250ZXh0LmdldERlcHRoKCk7XG5cbiAgICBkZXB0aCsrO1xuXG4gICAgcmV0dXJuIGRlcHRoO1xuICB9XG5cbiAgaXNSZWxlYXNlZCgpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5pc1JlbGVhc2VkKCk7IH1cblxuICBpc1VucmVsZWFzZWQoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuaXNVbnJlbGVhc2VkKCk7IH1cblxuICBnZXRSZWxlYXNlQ29udGV4dCgpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRSZWxlYXNlQ29udGV4dCgpOyB9XG5cbiAgbm9kZXNBc1N0cmluZyhub2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQubm9kZXNBc1N0cmluZyhub2RlKTsgfVxuXG4gIG5vZGVBc1N0cmluZyhub2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpOyB9XG5cbiAgdHJhY2UobWVzc2FnZSkge1xuICAgIGNvbnN0IGxldmVsID0gVFJBQ0VfTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UpO1xuICB9XG5cbiAgZGVidWcobWVzc2FnZSkge1xuICAgIGNvbnN0IGxldmVsID0gREVCVUdfTEVWRUw7XG5cbiAgICB0aGlzLndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UpO1xuICB9XG5cbiAgaW5mbyhtZXNzYWdlKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBJTkZPX0xFVkVMO1xuXG4gICAgdGhpcy53cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlKTtcbiAgfVxuXG4gIHdhcm5pbmcobWVzc2FnZSkge1xuICAgIGNvbnN0IGxldmVsID0gV0FSTklOR19MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSk7XG4gIH1cblxuICBlcnJvcihtZXNzYWdlKSB7XG4gICAgY29uc3QgbGV2ZWwgPSBFUlJPUl9MRVZFTDtcblxuICAgIHRoaXMud3JpdGVUb0xvZyhsZXZlbCwgbWVzc2FnZSk7XG4gIH1cblxuICB3cml0ZVRvTG9nKGxldmVsLCBtZXNzYWdlKSB7XG4gICAgY29uc3QgZGVwdGggPSB0aGlzLmdldERlcHRoKCksXG4gICAgICAgICAgaW5kZW50ID0gRE9VQkxFX1NQQUNFLnJlcGVhdChkZXB0aCk7XG5cbiAgICBtZXNzYWdlID0gYCR7aW5kZW50fSR7bWVzc2FnZX1gOyAgLy8vXG5cbiAgICBjb25zdCByZWxlYXNlQ29udGV4dCA9IHRoaXMuZ2V0UmVsZWFzZUNvbnRleHQoKTtcblxuICAgIHJlbGVhc2VDb250ZXh0LndyaXRlVG9Mb2cobGV2ZWwsIG1lc3NhZ2UpO1xuICB9XG5cbiAgYnJlYWsobm9kZSwgYnJlYWtQb2ludCwgcmVzdW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuYnJlYWsobm9kZSwgYnJlYWtQb2ludCwgcmVzdW1lKTsgfVxuXG4gIHN0YXRpYyBmcm9tTm90aGluZyhDbGFzcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IGNvbnRleHQgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCk7XG5cbiAgICBjb250ZXh0ID0gbmV3IENsYXNzKGNvbnRleHQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7ICAvLy9cblxuICAgIHJldHVybiBjb250ZXh0O1xuICB9XG59XG4iXSwibmFtZXMiOlsiQ29udGV4dCIsImNvbnRleHQiLCJnZXRDb250ZXh0IiwiZ2V0RGVwdGgiLCJkZXB0aCIsImlzUmVsZWFzZWQiLCJpc1VucmVsZWFzZWQiLCJnZXRSZWxlYXNlQ29udGV4dCIsIm5vZGVzQXNTdHJpbmciLCJub2RlIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJtZXNzYWdlIiwibGV2ZWwiLCJUUkFDRV9MRVZFTCIsIndyaXRlVG9Mb2ciLCJkZWJ1ZyIsIkRFQlVHX0xFVkVMIiwiaW5mbyIsIklORk9fTEVWRUwiLCJ3YXJuaW5nIiwiV0FSTklOR19MRVZFTCIsImVycm9yIiwiRVJST1JfTEVWRUwiLCJpbmRlbnQiLCJET1VCTEVfU1BBQ0UiLCJyZXBlYXQiLCJyZWxlYXNlQ29udGV4dCIsImJyZWFrIiwiYnJlYWtQb2ludCIsInJlc3VtZSIsImZyb21Ob3RoaW5nIiwiQ2xhc3MiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJwb3AiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUlBOzs7ZUFBcUJBOzs7MkJBRjBFO0FBRWhGLE1BQU1BO0lBQ25CLFlBQVlDLE9BQU8sQ0FBRTtRQUNuQixJQUFJLENBQUNBLE9BQU8sR0FBR0E7SUFDakI7SUFFQUMsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDRCxPQUFPO0lBQ3JCO0lBRUFFLFdBQVc7UUFDVCxJQUFJQyxRQUFRLElBQUksQ0FBQ0gsT0FBTyxDQUFDRSxRQUFRO1FBRWpDQztRQUVBLE9BQU9BO0lBQ1Q7SUFFQUMsYUFBYTtRQUFFLE9BQU8sSUFBSSxDQUFDSixPQUFPLENBQUNJLFVBQVU7SUFBSTtJQUVqREMsZUFBZTtRQUFFLE9BQU8sSUFBSSxDQUFDTCxPQUFPLENBQUNLLFlBQVk7SUFBSTtJQUVyREMsb0JBQW9CO1FBQUUsT0FBTyxJQUFJLENBQUNOLE9BQU8sQ0FBQ00saUJBQWlCO0lBQUk7SUFFL0RDLGNBQWNDLElBQUksRUFBRTtRQUFFLE9BQU8sSUFBSSxDQUFDUixPQUFPLENBQUNPLGFBQWEsQ0FBQ0M7SUFBTztJQUUvREMsYUFBYUQsSUFBSSxFQUFFO1FBQUUsT0FBTyxJQUFJLENBQUNSLE9BQU8sQ0FBQ1MsWUFBWSxDQUFDRDtJQUFPO0lBRTdERSxNQUFNQyxPQUFPLEVBQUU7UUFDYixNQUFNQyxRQUFRQyxzQkFBVztRQUV6QixJQUFJLENBQUNDLFVBQVUsQ0FBQ0YsT0FBT0Q7SUFDekI7SUFFQUksTUFBTUosT0FBTyxFQUFFO1FBQ2IsTUFBTUMsUUFBUUksc0JBQVc7UUFFekIsSUFBSSxDQUFDRixVQUFVLENBQUNGLE9BQU9EO0lBQ3pCO0lBRUFNLEtBQUtOLE9BQU8sRUFBRTtRQUNaLE1BQU1DLFFBQVFNLHFCQUFVO1FBRXhCLElBQUksQ0FBQ0osVUFBVSxDQUFDRixPQUFPRDtJQUN6QjtJQUVBUSxRQUFRUixPQUFPLEVBQUU7UUFDZixNQUFNQyxRQUFRUSx3QkFBYTtRQUUzQixJQUFJLENBQUNOLFVBQVUsQ0FBQ0YsT0FBT0Q7SUFDekI7SUFFQVUsTUFBTVYsT0FBTyxFQUFFO1FBQ2IsTUFBTUMsUUFBUVUsc0JBQVc7UUFFekIsSUFBSSxDQUFDUixVQUFVLENBQUNGLE9BQU9EO0lBQ3pCO0lBRUFHLFdBQVdGLEtBQUssRUFBRUQsT0FBTyxFQUFFO1FBQ3pCLE1BQU1SLFFBQVEsSUFBSSxDQUFDRCxRQUFRLElBQ3JCcUIsU0FBU0MsdUJBQVksQ0FBQ0MsTUFBTSxDQUFDdEI7UUFFbkNRLFVBQVUsR0FBR1ksU0FBU1osU0FBUyxFQUFHLEdBQUc7UUFFckMsTUFBTWUsaUJBQWlCLElBQUksQ0FBQ3BCLGlCQUFpQjtRQUU3Q29CLGVBQWVaLFVBQVUsQ0FBQ0YsT0FBT0Q7SUFDbkM7SUFFQWdCLE1BQU1uQixJQUFJLEVBQUVvQixVQUFVLEVBQUVDLE1BQU0sRUFBRTtRQUFFLE9BQU8sSUFBSSxDQUFDN0IsT0FBTyxDQUFDMkIsS0FBSyxDQUFDbkIsTUFBTW9CLFlBQVlDO0lBQVM7SUFFdkYsT0FBT0MsWUFBWUMsS0FBSyxFQUFFLEdBQUdDLGtCQUFrQixFQUFFO1FBQy9DLElBQUloQyxVQUFVZ0MsbUJBQW1CQyxHQUFHO1FBRXBDakMsVUFBVSxJQUFJK0IsTUFBTS9CLFlBQVlnQyxxQkFBc0IsR0FBRztRQUV6RCxPQUFPaEM7SUFDVDtBQUNGIn0=
@@ -18,6 +18,9 @@ _export(exports, {
18
18
  get every () {
19
19
  return every;
20
20
  },
21
+ get forEach () {
22
+ return forEach;
23
+ },
21
24
  get resolve () {
22
25
  return resolve;
23
26
  },
@@ -29,11 +32,11 @@ _export(exports, {
29
32
  }
30
33
  });
31
34
  const _necessary = require("necessary");
32
- const { filter } = _necessary.arrayUtilities, { forEach } = _necessary.asynchronousUtilities;
35
+ const { filter: arrayFilter } = _necessary.arrayUtilities, { forEach: asynchronousForEach } = _necessary.asynchronousUtilities;
33
36
  function some(array, callback, ...remainingArguments) {
34
37
  let success = false;
35
38
  const continuation = remainingArguments.pop();
36
- forEach(array, (element, next, done)=>{
39
+ asynchronousForEach(array, (element, next, done)=>{
37
40
  callback(element, ...remainingArguments, (passed)=>{
38
41
  if (passed) {
39
42
  success = true;
@@ -49,7 +52,7 @@ function some(array, callback, ...remainingArguments) {
49
52
  function every(array, callback, ...remainingArguments) {
50
53
  let success = true;
51
54
  const continuation = remainingArguments.pop();
52
- forEach(array, (element, next, done)=>{
55
+ asynchronousForEach(array, (element, next, done)=>{
53
56
  callback(element, ...remainingArguments, (passed)=>{
54
57
  if (!passed) {
55
58
  success = false;
@@ -62,6 +65,12 @@ function every(array, callback, ...remainingArguments) {
62
65
  continuation(success);
63
66
  });
64
67
  }
68
+ function forEach(array, callback, ...remainingArguments) {
69
+ const continuation = remainingArguments.pop();
70
+ asynchronousForEach(array, (element, next, done)=>{
71
+ callback(element, ...remainingArguments, next);
72
+ }, continuation);
73
+ }
65
74
  function resolve(arrayA, arrayB, callback, ...remainingArguments) {
66
75
  arrayA = [
67
76
  ...arrayA
@@ -85,7 +94,7 @@ function resolve(arrayA, arrayB, callback, ...remainingArguments) {
85
94
  continuation(success);
86
95
  return;
87
96
  }
88
- filter(arrayA, (elementA)=>{
97
+ arrayFilter(arrayA, (elementA)=>{
89
98
  const arrayBIncludesElementA = arrayB.includes(elementA);
90
99
  if (!arrayBIncludesElementA) {
91
100
  return true;
@@ -135,9 +144,10 @@ function unbreakable(innerFunction) {
135
144
  const _default = {
136
145
  some,
137
146
  every,
147
+ forEach,
138
148
  resolve,
139
149
  breakable,
140
150
  unbreakable
141
151
  };
142
152
 
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29udGludWF0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcywgYXN5bmNocm9ub3VzVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5jb25zdCB7IGZpbHRlciB9ID0gYXJyYXlVdGlsaXRpZXMsXG4gICAgICB7IGZvckVhY2ggfSA9IGFzeW5jaHJvbm91c1V0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIHNvbWUoYXJyYXksIGNhbGxiYWNrLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgbGV0IHN1Y2Nlc3MgPSBmYWxzZTtcblxuICBjb25zdCBjb250aW51YXRpb24gPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCk7XG5cbiAgZm9yRWFjaChhcnJheSwgKGVsZW1lbnQsIG5leHQsIGRvbmUpID0+IHtcbiAgICBjYWxsYmFjayhlbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMsIChwYXNzZWQpID0+IHtcbiAgICAgIGlmIChwYXNzZWQpIHtcbiAgICAgICAgc3VjY2VzcyA9IHRydWU7XG5cbiAgICAgICAgZG9uZSgpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbmV4dCgpO1xuICAgIH0pO1xuICB9LCAoKSA9PiB7XG4gICAgY29udGludWF0aW9uKHN1Y2Nlc3MpO1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV2ZXJ5KGFycmF5LCBjYWxsYmFjaywgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGxldCBzdWNjZXNzID0gdHJ1ZTtcblxuICBjb25zdCBjb250aW51YXRpb24gPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCk7XG5cbiAgZm9yRWFjaChhcnJheSwgKGVsZW1lbnQsIG5leHQsIGRvbmUpID0+IHtcbiAgICBjYWxsYmFjayhlbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMsIChwYXNzZWQpID0+IHtcbiAgICAgIGlmICghcGFzc2VkKSB7XG4gICAgICAgIHN1Y2Nlc3MgPSBmYWxzZTtcblxuICAgICAgICBkb25lKCk7XG5cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBuZXh0KCk7XG4gICAgfSk7XG4gIH0sICgpID0+IHtcbiAgICBjb250aW51YXRpb24oc3VjY2Vzcyk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZShhcnJheUEsIGFycmF5QiwgY2FsbGJhY2ssIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICBhcnJheUEgPSBbICAvLy9cbiAgICAuLi5hcnJheUFcbiAgXTtcblxuICBjb25zdCBjb250aW51YXRpb24gPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCk7XG5cbiAgZnVuY3Rpb24gbmV4dFBhc3MoKSB7XG4gICAgY29uc3QgYXJyYXlBTGVuZ3RoID0gYXJyYXlBLmxlbmd0aDtcblxuICAgIGlmIChhcnJheUFMZW5ndGggPT09IDApIHtcbiAgICAgIGNvbnN0IHN1Y2Nlc3MgPSB0cnVlOyAgLy8vXG5cbiAgICAgIGNvbnRpbnVhdGlvbihzdWNjZXNzKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBzdWNjZXNzID0gZmFsc2U7XG5cbiAgICBsZXQgY291bnQgPSAtMTtcblxuICAgIGZ1bmN0aW9uIG5leHRFbGVtZW50KCkge1xuICAgICAgY291bnQrKztcblxuICAgICAgY29uc3QgdGVybWluYXRlID0gKGNvdW50ID09PSBhcnJheUFMZW5ndGgpO1xuXG4gICAgICBpZiAodGVybWluYXRlKSB7XG4gICAgICAgIGlmICghc3VjY2Vzcykge1xuICAgICAgICAgIGNvbnN0IHN1Y2Nlc3MgPSBmYWxzZTsgLy8vXG5cbiAgICAgICAgICBjb250aW51YXRpb24oc3VjY2Vzcyk7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBmaWx0ZXIoYXJyYXlBLCAoZWxlbWVudEEpID0+IHtcbiAgICAgICAgICBjb25zdCBhcnJheUJJbmNsdWRlc0VsZW1lbnRBID0gYXJyYXlCLmluY2x1ZGVzKGVsZW1lbnRBKTtcblxuICAgICAgICAgIGlmICghYXJyYXlCSW5jbHVkZXNFbGVtZW50QSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBuZXh0UGFzcygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSBjb3VudCwgIC8vL1xuICAgICAgICAgICAgICBlbGVtZW50QSA9IGFycmF5QVtpbmRleF07XG5cbiAgICAgICAgY2FsbGJhY2soZWxlbWVudEEsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgKHBhc3NlZCkgPT4ge1xuICAgICAgICAgIGlmIChwYXNzZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRCID0gZWxlbWVudEE7ICAvLy9cblxuICAgICAgICAgICAgYXJyYXlCLnB1c2goZWxlbWVudEIpO1xuXG4gICAgICAgICAgICBzdWNjZXNzID0gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBuZXh0RWxlbWVudCgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBuZXh0RWxlbWVudCgpO1xuICB9XG5cbiAgbmV4dFBhc3MoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJyZWFrYWJsZShpbm5lckZ1bmN0aW9uKSB7XG4gIHJldHVybiBmdW5jdGlvbiguLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCByZW1haW5pbmdBcmd1bWVudHNMZW5ndGggPSByZW1haW5pbmdBcmd1bWVudHMubGVuZ3RoLFxuICAgICAgICAgIGlubmVyRnVuY3Rpb25MZW5ndGggPSBpbm5lckZ1bmN0aW9uLmxlbmd0aCxcbiAgICAgICAgICBjb250aW51YXRpb24gPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksXG4gICAgICAgICAgY29udGV4dCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKTtcblxuICAgIHRoaXMuYnJlYWsoY29udGV4dCwgKCkgPT4ge1xuICAgICAgaWYgKGlubmVyRnVuY3Rpb25MZW5ndGggPT09IHJlbWFpbmluZ0FyZ3VtZW50c0xlbmd0aCkge1xuICAgICAgICBpbm5lckZ1bmN0aW9uLmNhbGwodGhpcywgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBjb250ZXh0LCBjb250aW51YXRpb24pO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVzdWx0ID0gaW5uZXJGdW5jdGlvbi5jYWxsKHRoaXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgY29udGV4dCk7XG5cbiAgICAgIGNvbnRpbnVhdGlvbihyZXN1bHQpO1xuICAgIH0pO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdW5icmVha2FibGUoaW5uZXJGdW5jdGlvbikge1xuICByZXR1cm4gZnVuY3Rpb24oLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgY29uc3QgaW5uZXJGdW5jdGlvbkxlbmd0aCA9IGlubmVyRnVuY3Rpb24ubGVuZ3RoLFxuICAgICAgICAgIHJlbWFpbmluZ0FyZ3VtZW50c0xlbmd0aCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5sZW5ndGg7XG5cbiAgICBpZiAoaW5uZXJGdW5jdGlvbkxlbmd0aCA9PT0gcmVtYWluaW5nQXJndW1lbnRzTGVuZ3RoKSB7XG4gICAgICBpbm5lckZ1bmN0aW9uLmNhbGwodGhpcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbnRpbnVhdGlvbiA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSxcbiAgICAgICAgICByZXN1bHQgPSBpbm5lckZ1bmN0aW9uLmNhbGwodGhpcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIGNvbnRpbnVhdGlvbihyZXN1bHQpO1xuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIHNvbWUsXG4gIGV2ZXJ5LFxuICByZXNvbHZlLFxuICBicmVha2FibGUsXG4gIHVuYnJlYWthYmxlXG59XG4iXSwibmFtZXMiOlsiYnJlYWthYmxlIiwiZXZlcnkiLCJyZXNvbHZlIiwic29tZSIsInVuYnJlYWthYmxlIiwiZmlsdGVyIiwiYXJyYXlVdGlsaXRpZXMiLCJmb3JFYWNoIiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwiYXJyYXkiLCJjYWxsYmFjayIsInJlbWFpbmluZ0FyZ3VtZW50cyIsInN1Y2Nlc3MiLCJjb250aW51YXRpb24iLCJwb3AiLCJlbGVtZW50IiwibmV4dCIsImRvbmUiLCJwYXNzZWQiLCJhcnJheUEiLCJhcnJheUIiLCJuZXh0UGFzcyIsImFycmF5QUxlbmd0aCIsImxlbmd0aCIsImNvdW50IiwibmV4dEVsZW1lbnQiLCJ0ZXJtaW5hdGUiLCJlbGVtZW50QSIsImFycmF5QkluY2x1ZGVzRWxlbWVudEEiLCJpbmNsdWRlcyIsImluZGV4IiwiZWxlbWVudEIiLCJwdXNoIiwiaW5uZXJGdW5jdGlvbiIsInJlbWFpbmluZ0FyZ3VtZW50c0xlbmd0aCIsImlubmVyRnVuY3Rpb25MZW5ndGgiLCJjb250ZXh0IiwiYnJlYWsiLCJjYWxsIiwicmVzdWx0Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUF3SGdCQTtlQUFBQTs7UUF1Q2hCO2VBQUE7O1FBbElnQkM7ZUFBQUE7O1FBc0JBQztlQUFBQTs7UUE1Q0FDO2VBQUFBOztRQXNJQUM7ZUFBQUE7OzsyQkEzSXNDO0FBRXRELE1BQU0sRUFBRUMsTUFBTSxFQUFFLEdBQUdDLHlCQUFjLEVBQzNCLEVBQUVDLE9BQU8sRUFBRSxHQUFHQyxnQ0FBcUI7QUFFbEMsU0FBU0wsS0FBS00sS0FBSyxFQUFFQyxRQUFRLEVBQUUsR0FBR0Msa0JBQWtCO0lBQ3pELElBQUlDLFVBQVU7SUFFZCxNQUFNQyxlQUFlRixtQkFBbUJHLEdBQUc7SUFFM0NQLFFBQVFFLE9BQU8sQ0FBQ00sU0FBU0MsTUFBTUM7UUFDN0JQLFNBQVNLLFlBQVlKLG9CQUFvQixD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
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29udGludWF0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcywgYXN5bmNocm9ub3VzVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5jb25zdCB7IGZpbHRlcjogYXJyYXlGaWx0ZXIgfSA9IGFycmF5VXRpbGl0aWVzLFxuICAgICAgeyBmb3JFYWNoOiBhc3luY2hyb25vdXNGb3JFYWNoIH0gPSBhc3luY2hyb25vdXNVdGlsaXRpZXM7XG5cbmV4cG9ydCBmdW5jdGlvbiBzb21lKGFycmF5LCBjYWxsYmFjaywgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGxldCBzdWNjZXNzID0gZmFsc2U7XG5cbiAgY29uc3QgY29udGludWF0aW9uID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpO1xuXG4gIGFzeW5jaHJvbm91c0ZvckVhY2goYXJyYXksIChlbGVtZW50LCBuZXh0LCBkb25lKSA9PiB7XG4gICAgY2FsbGJhY2soZWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCAocGFzc2VkKSA9PiB7XG4gICAgICBpZiAocGFzc2VkKSB7XG4gICAgICAgIHN1Y2Nlc3MgPSB0cnVlO1xuXG4gICAgICAgIGRvbmUoKTtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIG5leHQoKTtcbiAgICB9KTtcbiAgfSwgKCkgPT4ge1xuICAgIGNvbnRpbnVhdGlvbihzdWNjZXNzKTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBldmVyeShhcnJheSwgY2FsbGJhY2ssIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICBsZXQgc3VjY2VzcyA9IHRydWU7XG5cbiAgY29uc3QgY29udGludWF0aW9uID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpO1xuXG4gIGFzeW5jaHJvbm91c0ZvckVhY2goYXJyYXksIChlbGVtZW50LCBuZXh0LCBkb25lKSA9PiB7XG4gICAgY2FsbGJhY2soZWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCAocGFzc2VkKSA9PiB7XG4gICAgICBpZiAoIXBhc3NlZCkge1xuICAgICAgICBzdWNjZXNzID0gZmFsc2U7XG5cbiAgICAgICAgZG9uZSgpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbmV4dCgpO1xuICAgIH0pO1xuICB9LCAoKSA9PiB7XG4gICAgY29udGludWF0aW9uKHN1Y2Nlc3MpO1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvckVhY2goYXJyYXksIGNhbGxiYWNrLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgY29uc3QgY29udGludWF0aW9uID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpO1xuXG4gIGFzeW5jaHJvbm91c0ZvckVhY2goYXJyYXksIChlbGVtZW50LCBuZXh0LCBkb25lKSA9PiB7XG4gICAgY2FsbGJhY2soZWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBuZXh0KTtcbiAgfSwgY29udGludWF0aW9uKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmUoYXJyYXlBLCBhcnJheUIsIGNhbGxiYWNrLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgYXJyYXlBID0gWyAgLy8vXG4gICAgLi4uYXJyYXlBXG4gIF07XG5cbiAgY29uc3QgY29udGludWF0aW9uID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpO1xuXG4gIGZ1bmN0aW9uIG5leHRQYXNzKCkge1xuICAgIGNvbnN0IGFycmF5QUxlbmd0aCA9IGFycmF5QS5sZW5ndGg7XG5cbiAgICBpZiAoYXJyYXlBTGVuZ3RoID09PSAwKSB7XG4gICAgICBjb25zdCBzdWNjZXNzID0gdHJ1ZTsgIC8vL1xuXG4gICAgICBjb250aW51YXRpb24oc3VjY2Vzcyk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgc3VjY2VzcyA9IGZhbHNlO1xuXG4gICAgbGV0IGNvdW50ID0gLTE7XG5cbiAgICBmdW5jdGlvbiBuZXh0RWxlbWVudCgpIHtcbiAgICAgIGNvdW50Kys7XG5cbiAgICAgIGNvbnN0IHRlcm1pbmF0ZSA9IChjb3VudCA9PT0gYXJyYXlBTGVuZ3RoKTtcblxuICAgICAgaWYgKHRlcm1pbmF0ZSkge1xuICAgICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgICBjb25zdCBzdWNjZXNzID0gZmFsc2U7IC8vL1xuXG4gICAgICAgICAgY29udGludWF0aW9uKHN1Y2Nlc3MpO1xuXG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgYXJyYXlGaWx0ZXIoYXJyYXlBLCAoZWxlbWVudEEpID0+IHtcbiAgICAgICAgICBjb25zdCBhcnJheUJJbmNsdWRlc0VsZW1lbnRBID0gYXJyYXlCLmluY2x1ZGVzKGVsZW1lbnRBKTtcblxuICAgICAgICAgIGlmICghYXJyYXlCSW5jbHVkZXNFbGVtZW50QSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBuZXh0UGFzcygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSBjb3VudCwgIC8vL1xuICAgICAgICAgICAgICBlbGVtZW50QSA9IGFycmF5QVtpbmRleF07XG5cbiAgICAgICAgY2FsbGJhY2soZWxlbWVudEEsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgKHBhc3NlZCkgPT4ge1xuICAgICAgICAgIGlmIChwYXNzZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRCID0gZWxlbWVudEE7ICAvLy9cblxuICAgICAgICAgICAgYXJyYXlCLnB1c2goZWxlbWVudEIpO1xuXG4gICAgICAgICAgICBzdWNjZXNzID0gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBuZXh0RWxlbWVudCgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBuZXh0RWxlbWVudCgpO1xuICB9XG5cbiAgbmV4dFBhc3MoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJyZWFrYWJsZShpbm5lckZ1bmN0aW9uKSB7XG4gIHJldHVybiBmdW5jdGlvbiguLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCByZW1haW5pbmdBcmd1bWVudHNMZW5ndGggPSByZW1haW5pbmdBcmd1bWVudHMubGVuZ3RoLFxuICAgICAgICAgIGlubmVyRnVuY3Rpb25MZW5ndGggPSBpbm5lckZ1bmN0aW9uLmxlbmd0aCxcbiAgICAgICAgICBjb250aW51YXRpb24gPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksXG4gICAgICAgICAgY29udGV4dCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKTtcblxuICAgIHRoaXMuYnJlYWsoY29udGV4dCwgKCkgPT4ge1xuICAgICAgaWYgKGlubmVyRnVuY3Rpb25MZW5ndGggPT09IHJlbWFpbmluZ0FyZ3VtZW50c0xlbmd0aCkge1xuICAgICAgICBpbm5lckZ1bmN0aW9uLmNhbGwodGhpcywgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBjb250ZXh0LCBjb250aW51YXRpb24pO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVzdWx0ID0gaW5uZXJGdW5jdGlvbi5jYWxsKHRoaXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgY29udGV4dCk7XG5cbiAgICAgIGNvbnRpbnVhdGlvbihyZXN1bHQpO1xuICAgIH0pO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdW5icmVha2FibGUoaW5uZXJGdW5jdGlvbikge1xuICByZXR1cm4gZnVuY3Rpb24oLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgY29uc3QgaW5uZXJGdW5jdGlvbkxlbmd0aCA9IGlubmVyRnVuY3Rpb24ubGVuZ3RoLFxuICAgICAgICAgIHJlbWFpbmluZ0FyZ3VtZW50c0xlbmd0aCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5sZW5ndGg7XG5cbiAgICBpZiAoaW5uZXJGdW5jdGlvbkxlbmd0aCA9PT0gcmVtYWluaW5nQXJndW1lbnRzTGVuZ3RoKSB7XG4gICAgICBpbm5lckZ1bmN0aW9uLmNhbGwodGhpcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbnRpbnVhdGlvbiA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSxcbiAgICAgICAgICByZXN1bHQgPSBpbm5lckZ1bmN0aW9uLmNhbGwodGhpcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIGNvbnRpbnVhdGlvbihyZXN1bHQpO1xuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIHNvbWUsXG4gIGV2ZXJ5LFxuICBmb3JFYWNoLFxuICByZXNvbHZlLFxuICBicmVha2FibGUsXG4gIHVuYnJlYWthYmxlXG59XG4iXSwibmFtZXMiOlsiYnJlYWthYmxlIiwiZXZlcnkiLCJmb3JFYWNoIiwicmVzb2x2ZSIsInNvbWUiLCJ1bmJyZWFrYWJsZSIsImZpbHRlciIsImFycmF5RmlsdGVyIiwiYXJyYXlVdGlsaXRpZXMiLCJhc3luY2hyb25vdXNGb3JFYWNoIiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwiYXJyYXkiLCJjYWxsYmFjayIsInJlbWFpbmluZ0FyZ3VtZW50cyIsInN1Y2Nlc3MiLCJjb250aW51YXRpb24iLCJwb3AiLCJlbGVtZW50IiwibmV4dCIsImRvbmUiLCJwYXNzZWQiLCJhcnJheUEiLCJhcnJheUIiLCJuZXh0UGFzcyIsImFycmF5QUxlbmd0aCIsImxlbmd0aCIsImNvdW50IiwibmV4dEVsZW1lbnQiLCJ0ZXJtaW5hdGUiLCJlbGVtZW50QSIsImFycmF5QkluY2x1ZGVzRWxlbWVudEEiLCJpbmNsdWRlcyIsImluZGV4IiwiZWxlbWVudEIiLCJwdXNoIiwiaW5uZXJGdW5jdGlvbiIsInJlbWFpbmluZ0FyZ3VtZW50c0xlbmd0aCIsImlubmVyRnVuY3Rpb25MZW5ndGgiLCJjb250ZXh0IiwiYnJlYWsiLCJjYWxsIiwi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
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-languages",
3
3
  "author": "James Smith",
4
- "version": "1.0.40",
4
+ "version": "1.0.42",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-languages",
7
7
  "description": "Occam's common language functionality.",
package/src/context.js CHANGED
@@ -70,7 +70,7 @@ export default class Context {
70
70
  releaseContext.writeToLog(level, message);
71
71
  }
72
72
 
73
- break(node, lineIndex) { return this.context.break(node, lineIndex); }
73
+ break(node, breakPoint, resume) { return this.context.break(node, breakPoint, resume); }
74
74
 
75
75
  static fromNothing(Class, ...remainingArguments) {
76
76
  let context = remainingArguments.pop();
@@ -2,15 +2,15 @@
2
2
 
3
3
  import { arrayUtilities, asynchronousUtilities } from "necessary";
4
4
 
5
- const { filter } = arrayUtilities,
6
- { forEach } = asynchronousUtilities;
5
+ const { filter: arrayFilter } = arrayUtilities,
6
+ { forEach: asynchronousForEach } = asynchronousUtilities;
7
7
 
8
8
  export function some(array, callback, ...remainingArguments) {
9
9
  let success = false;
10
10
 
11
11
  const continuation = remainingArguments.pop();
12
12
 
13
- forEach(array, (element, next, done) => {
13
+ asynchronousForEach(array, (element, next, done) => {
14
14
  callback(element, ...remainingArguments, (passed) => {
15
15
  if (passed) {
16
16
  success = true;
@@ -32,7 +32,7 @@ export function every(array, callback, ...remainingArguments) {
32
32
 
33
33
  const continuation = remainingArguments.pop();
34
34
 
35
- forEach(array, (element, next, done) => {
35
+ asynchronousForEach(array, (element, next, done) => {
36
36
  callback(element, ...remainingArguments, (passed) => {
37
37
  if (!passed) {
38
38
  success = false;
@@ -49,6 +49,14 @@ export function every(array, callback, ...remainingArguments) {
49
49
  });
50
50
  }
51
51
 
52
+ export function forEach(array, callback, ...remainingArguments) {
53
+ const continuation = remainingArguments.pop();
54
+
55
+ asynchronousForEach(array, (element, next, done) => {
56
+ callback(element, ...remainingArguments, next);
57
+ }, continuation);
58
+ }
59
+
52
60
  export function resolve(arrayA, arrayB, callback, ...remainingArguments) {
53
61
  arrayA = [ ///
54
62
  ...arrayA
@@ -85,7 +93,7 @@ export function resolve(arrayA, arrayB, callback, ...remainingArguments) {
85
93
  return;
86
94
  }
87
95
 
88
- filter(arrayA, (elementA) => {
96
+ arrayFilter(arrayA, (elementA) => {
89
97
  const arrayBIncludesElementA = arrayB.includes(elementA);
90
98
 
91
99
  if (!arrayBIncludesElementA) {
@@ -160,6 +168,7 @@ export function unbreakable(innerFunction) {
160
168
  export default {
161
169
  some,
162
170
  every,
171
+ forEach,
163
172
  resolve,
164
173
  breakable,
165
174
  unbreakable