occam-nominal 1.0.432 → 1.0.434
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.
|
@@ -136,10 +136,10 @@ const _default = (0, _elements.define)(class Equivalence extends _occamlanguages
|
|
|
136
136
|
}, context);
|
|
137
137
|
return equivalence;
|
|
138
138
|
}
|
|
139
|
-
someOtherTerm(
|
|
140
|
-
const
|
|
141
|
-
const
|
|
142
|
-
if (!
|
|
139
|
+
someOtherTerm(termNode, callback) {
|
|
140
|
+
const terms = this.terms.filter((term)=>{
|
|
141
|
+
const termNodeMatches = term.matchTermNode(termNode);
|
|
142
|
+
if (!termNodeMatches) {
|
|
143
143
|
return true;
|
|
144
144
|
}
|
|
145
145
|
}), result = terms.some(callback);
|
|
@@ -175,4 +175,4 @@ const _default = (0, _elements.define)(class Equivalence extends _occamlanguages
|
|
|
175
175
|
}
|
|
176
176
|
});
|
|
177
177
|
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2VxdWl2YWxlbmNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2NvbnRleHRcIjtcbmltcG9ydCB7IHN0cmlwQnJhY2tldHNGcm9tVGVybSB9IGZyb20gXCIuLi91dGlsaXRpZXMvYnJhY2tldHNcIjtcbmltcG9ydCB7IGluc3RhbnRpYXRlRXF1aXZhbGVuY2UgfSBmcm9tIFwiLi4vcHJvY2Vzcy9pbnN0YW50aWF0ZVwiO1xuaW1wb3J0IHsgZXF1aXZhbGVuY2VTdHJpbmdGcm9tVGVybXMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgZXF1aXZhbGVuY2VGcm9tRXF1aXZhbGVuY2VOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5cbmNvbnN0IHsgZmlyc3QsIHNlY29uZCwgY29tcHJlc3MgfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgRXF1aXZhbGVuY2UgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0ZXJtcykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnRlcm1zID0gdGVybXM7XG4gIH1cblxuICBnZXRUZXJtcygpIHtcbiAgICByZXR1cm4gdGhpcy50ZXJtcztcbiAgfVxuXG4gIGdldEVxdWl2YWxlbmNlTm9kZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgZXF1aXZhbGVuY2VOb2RlID0gbm9kZTsgLy8vXG5cbiAgICByZXR1cm4gZXF1aXZhbGVuY2VOb2RlO1xuICB9XG5cbiAgZ2V0R3JvdW5kZWRUZXJtcyhkZWZpbmVkVmFyaWFibGVzLCBncm91bmRlZFRlcm1zLCBjb250ZXh0KSB7XG4gICAgdGhpcy50ZXJtcy5mb3JFYWNoKCh0ZXJtKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtR3JvdW5kZWQgPSB0ZXJtLmlzR3JvdW5kZWQoZGVmaW5lZFZhcmlhYmxlcywgY29udGV4dCk7XG5cbiAgICAgIGlmICh0ZXJtR3JvdW5kZWQpIHtcbiAgICAgICAgY29uc3QgdGVybU1hdGNoZXNHcm91bmRlZFRlcm0gPSBncm91bmRlZFRlcm1zLnNvbWUoKGdyb3VuZGVkVGVybSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGdyb3VuZGVkVGVybU5vZGUgPSBncm91bmRlZFRlcm0uZ2V0Tm9kZSgpLFxuICAgICAgICAgICAgICAgIGdyb3VuZGVkVGVybU5vZGVNYXRjaGVzID0gdGVybS5tYXRjaFRlcm1Ob2RlKGdyb3VuZGVkVGVybU5vZGUpO1xuXG4gICAgICAgICAgaWYgKGdyb3VuZGVkVGVybU5vZGVNYXRjaGVzKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKCF0ZXJtTWF0Y2hlc0dyb3VuZGVkVGVybSkge1xuICAgICAgICAgIGNvbnN0IGdyb3VuZGVkVGVybSA9IHRlcm07XG5cbiAgICAgICAgICBncm91bmRlZFRlcm1zLnB1c2goZ3JvdW5kZWRUZXJtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0SW5pdGlhbGx5R3JvdW5kZWRUZXJtcyhjb250ZXh0KSB7XG4gICAgY29uc3QgaW5pdGlhbGx5R3JvdW5kZWRUZXJtcyA9IHRoaXMudGVybXMucmVkdWNlKChpbml0aWFsbHlHcm91bmRlZFRlcm1zLCB0ZXJtKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtSW5pdGlhbGx5R3JvdW5kZWQgPSB0ZXJtLmlzSW5pdGlhbGx5R3JvdW5kZWQoY29udGV4dCk7XG5cbiAgICAgIGlmICh0ZXJtSW5pdGlhbGx5R3JvdW5kZWQpIHtcbiAgICAgICAgY29uc3QgaW5pdGlhbGx5R3JvdW5kZWRUZXJtID0gdGVybTsgLy8vXG5cbiAgICAgICAgaW5pdGlhbGx5R3JvdW5kZWRUZXJtcy5wdXNoKGluaXRpYWxseUdyb3VuZGVkVGVybSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpbml0aWFsbHlHcm91bmRlZFRlcm1zO1xuICAgIH0sIFtdKTtcblxuICAgIHJldHVybiBpbml0aWFsbHlHcm91bmRlZFRlcm1zO1xuICB9XG5cbiAgZ2V0SW1wbGljaXRseUdyb3VuZGVkVGVybXMoZGVmaW5lZFZhcmlhYmxlcywgY29udGV4dCkge1xuICAgIGNvbnN0IGltcGxpY2l0bHlHcm91bmRlZFRlcm1zID0gdGhpcy50ZXJtcy5yZWR1Y2UoKGltcGxpY2l0bHlHcm91bmRlZFRlcm1zLCB0ZXJtKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtSW1wbGljaXRseUdyb3VuZGVkID0gdGVybS5pc0ltcGxpY2l0bHlHcm91bmRlZChkZWZpbmVkVmFyaWFibGVzLCBjb250ZXh0KTtcblxuICAgICAgaWYgKHRlcm1JbXBsaWNpdGx5R3JvdW5kZWQpIHtcbiAgICAgICAgY29uc3QgaW1wbGljaXRseUdyb3VuZGVkVGVybSA9IHRlcm07IC8vL1xuXG4gICAgICAgIGltcGxpY2l0bHlHcm91bmRlZFRlcm1zLnB1c2goaW1wbGljaXRseUdyb3VuZGVkVGVybSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpbXBsaWNpdGx5R3JvdW5kZWRUZXJtcztcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gaW1wbGljaXRseUdyb3VuZGVkVGVybXM7XG4gIH1cblxuICBpc0Rpc2pvaW50RnJvbShlcXVpdmFsZW5jZSkge1xuICAgIGNvbnN0IGRpc2pvaW50RnJvbSA9IGVxdWl2YWxlbmNlLmV2ZXJ5VGVybSgodGVybSkgPT4ge1xuICAgICAgY29uc3QgdGVybUVxdWF0ZXMgPSB0aGlzLmVxdWF0ZVRlcm0odGVybSk7XG5cbiAgICAgIGlmICghdGVybUVxdWF0ZXMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZGlzam9pbnRGcm9tO1xuICB9XG5cbiAgaXNJbml0aWFsbHlHcm91bmRlZChjb250ZXh0KSB7XG4gICAgY29uc3QgaW5pdGlhbGx5R3JvdW5kZWRUZXJtcyA9IHRoaXMuZ2V0SW5pdGlhbGx5R3JvdW5kZWRUZXJtcyhjb250ZXh0KSxcbiAgICAgICAgICBpbml0aWFsbHlHcm91bmRlZFRlcm1zTGVuZ3RoID0gaW5pdGlhbGx5R3JvdW5kZWRUZXJtcy5sZW5ndGgsXG4gICAgICAgICAgaW5pdGlhbGx5R3JvdW5kZWQgPSAoaW5pdGlhbGx5R3JvdW5kZWRUZXJtc0xlbmd0aCA+IDApO1xuXG4gICAgcmV0dXJuIGluaXRpYWxseUdyb3VuZGVkO1xuICB9XG5cbiAgaXNJbXBsaWNpdGx5R3JvdW5kZWQoZGVmaW5lZFZhcmlhYmxlcywgY29udGV4dCkge1xuICAgIGNvbnN0IGltcGxpY2l0bHlHcm91bmRlZFRlcm1zID0gdGhpcy5nZXRJbXBsaWNpdGx5R3JvdW5kZWRUZXJtcyhkZWZpbmVkVmFyaWFibGVzLCBjb250ZXh0KSxcbiAgICAgICAgICBpbXBsaWNpdGx5R3JvdW5kZWRUZXJtc0xlbmd0aCA9IGltcGxpY2l0bHlHcm91bmRlZFRlcm1zLmxlbmd0aCxcbiAgICAgICAgICBpbXBsaWNpdGx5R3JvdW5kZWQgPSAoaW1wbGljaXRseUdyb3VuZGVkVGVybXNMZW5ndGggPiAwKTtcblxuICAgIHJldHVybiBpbXBsaWNpdGx5R3JvdW5kZWQ7XG4gIH1cblxuICBlcXVhdGVUZXJtKHRlcm0pIHtcbiAgICBjb25zdCB0ZXJtQSA9IHRlcm0sIC8vL1xuICAgICAgICAgIHRlcm1FcXVhdGVzID0gdGhpcy5zb21lVGVybSgodGVybSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGVybUIgPSB0ZXJtLCAvLy9cbiAgICAgICAgICAgICAgICAgIHRlcm1BRXF1YWxUb1Rlcm1CID0gdGVybUEuaXNFcXVhbFRvKHRlcm1CKTtcblxuICAgICAgICAgICAgaWYgKHRlcm1BRXF1YWxUb1Rlcm1CKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgcmV0dXJuIHRlcm1FcXVhdGVzO1xuICB9XG5cbiAgZXF1YXRlVGVybXModGVybXMpIHtcbiAgICBjb25zdCB0ZXJtc0VxdWF0ZSA9IHRlcm1zLmV2ZXJ5KCh0ZXJtKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtRXF1YXRlcyA9IHRoaXMuZXF1YXRlVGVybSh0ZXJtKTtcblxuICAgICAgaWYgKHRlcm1FcXVhdGVzKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHRlcm1zRXF1YXRlO1xuICB9XG5cbiAgbWF0Y2hUZXJtTm9kZSh0ZXJtTm9kZSkge1xuICAgIGNvbnN0IHRlcm1Ob2RlTWF0Y2hlcyA9IHRoaXMudGVybXMuc29tZSgodGVybSkgPT4ge1xuICAgICAgY29uc3QgdGVybU5vZGVNYXRjaGVzID0gdGVybS5tYXRjaFRlcm1Ob2RlKHRlcm1Ob2RlKTtcblxuICAgICAgaWYgKHRlcm1Ob2RlTWF0Y2hlcykge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiB0ZXJtTm9kZU1hdGNoZXM7XG4gIH1cblxuICBjb21iaW5lVGVybXModGVybXMpIHtcbiAgICBjb25zdCBjb21iaW5lZFRlcm1zID0gW1xuICAgICAgLi4udGhpcy50ZXJtcyxcbiAgICAgIC4uLnRlcm1zXG4gICAgXTtcblxuICAgIGNvbXByZXNzKGNvbWJpbmVkVGVybXMsIChjb21iaW5lZFRlcm1BLCBjb21iaW5lZFRlcm1CKSA9PiB7XG4gICAgICBjb25zdCBjb21iaW5lZFRlcm1FcXVhbFRvQ29tYmluZWRUZXJtQiA9IGNvbWJpbmVkVGVybUEuaXNFcXVhbFRvKGNvbWJpbmVkVGVybUIpO1xuXG4gICAgICBpZiAoIWNvbWJpbmVkVGVybUVxdWFsVG9Db21iaW5lZFRlcm1CKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNvbWJpbmVkVGVybXM7XG4gIH1cblxuICBtZXJnZWRXaXRoKGVxdWl2YWxlbmNlLCBjb250ZXh0KSB7XG4gICAgaW5zdGFudGlhdGUoKGNvbnRleHQpID0+IHtcbiAgICAgIGxldCB0ZXJtcztcblxuICAgICAgdGVybXMgPSBlcXVpdmFsZW5jZS5nZXRUZXJtcygpO1xuXG4gICAgICBjb25zdCBjb21iaW5lZFRlcm1zID0gdGhpcy5jb21iaW5lVGVybXModGVybXMpO1xuXG4gICAgICB0ZXJtcyA9IGNvbWJpbmVkVGVybXM7ICAvLy9cblxuICAgICAgY29uc3QgZXF1aXZhbGVuY2VTdHJpbmcgPSBlcXVpdmFsZW5jZVN0cmluZ0Zyb21UZXJtcyh0ZXJtcyksXG4gICAgICAgICAgICBzdHJpbmcgPSBlcXVpdmFsZW5jZVN0cmluZywgIC8vL1xuICAgICAgICAgICAgZXF1aXZhbGVuY2VOb2RlID0gaW5zdGFudGlhdGVFcXVpdmFsZW5jZShzdHJpbmcsIGNvbnRleHQpO1xuXG4gICAgICBlcXVpdmFsZW5jZSA9IGVxdWl2YWxlbmNlRnJvbUVxdWl2YWxlbmNlTm9kZShlcXVpdmFsZW5jZU5vZGUsIGNvbnRleHQpO1xuICAgIH0sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGVxdWl2YWxlbmNlO1xuICB9XG5cbiAgc29tZU90aGVyVGVybSh0ZXJtLCBjYWxsYmFjaykge1xuICAgIGNvbnN0IHRlcm1BID0gdGVybSwgLy8vXG4gICAgICAgICAgdGVybXMgPSB0aGlzLnRlcm1zLmZpbHRlcigodGVybSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGVybUIgPSB0ZXJtLCAvLy9cbiAgICAgICAgICAgICAgICAgIHRlcm1BRXF1YWxUb1Rlcm1CID0gdGVybUEuaXNFcXVhbFRvKHRlcm1CKTtcblxuICAgICAgICAgICAgaWYgKCF0ZXJtQUVxdWFsVG9UZXJtQikge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSxcbiAgICAgICAgICByZXN1bHQgPSB0ZXJtcy5zb21lKGNhbGxiYWNrKTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzb21lVGVybShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy50ZXJtcy5zb21lKGNhbGxiYWNrKTsgfVxuXG4gIGV2ZXJ5VGVybShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy50ZXJtcy5ldmVyeShjYWxsYmFjayk7IH1cblxuICBzdGF0aWMgbmFtZSA9IFwiRXF1aXZhbGVuY2VcIjtcblxuICBzdGF0aWMgZnJvbUVxdWFsaXR5KGVxdWFsaXR5LCBjb250ZXh0KSB7XG4gICAgbGV0IGVxdWl2YWxlbmNlO1xuXG4gICAgbGV0IHRlcm1zO1xuXG4gICAgdGVybXMgPSBlcXVhbGl0eS5nZXRUZXJtcygpO1xuXG4gICAgdGVybXMgPSB0ZXJtcy5tYXAoKHRlcm0pID0+IHsgLy8vXG4gICAgICB0ZXJtID0gc3RyaXBCcmFja2V0c0Zyb21UZXJtKHRlcm0sIGNvbnRleHQpO1xuXG4gICAgICByZXR1cm4gdGVybTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGZpcnN0VGVybSA9IGZpcnN0KHRlcm1zKSxcbiAgICAgICAgICBzZWNvbmRUZXJtID0gc2Vjb25kKHRlcm1zKSxcbiAgICAgICAgICBmaXJzdFRlcm1FcXVhbFRvU2Vjb25kVGVybSA9IGZpcnN0VGVybS5pc0VxdWFsVG8oc2Vjb25kVGVybSk7XG5cbiAgICBpZiAoZmlyc3RUZXJtRXF1YWxUb1NlY29uZFRlcm0pIHtcbiAgICAgIGNvbnN0IHRlcm0gPSBmaXJzdFRlcm07IC8vL1xuXG4gICAgICB0ZXJtcyA9IFtcbiAgICAgICAgdGVybVxuICAgICAgXTtcbiAgICB9XG5cbiAgICBpbnN0YW50aWF0ZSgoY29udGV4dCkgPT4ge1xuICAgICAgY29uc3QgZXF1aXZhbGVuY2VTdHJpbmcgPSBlcXVpdmFsZW5jZVN0cmluZ0Zyb21UZXJtcyh0ZXJtcyksXG4gICAgICAgICAgICBzdHJpbmcgPSBlcXVpdmFsZW5jZVN0cmluZywgIC8vL1xuICAgICAgICAgICAgZXF1aXZhbGVuY2VOb2RlID0gaW5zdGFudGlhdGVFcXVpdmFsZW5jZShzdHJpbmcsIGNvbnRleHQpO1xuXG4gICAgICBlcXVpdmFsZW5jZSA9IGVxdWl2YWxlbmNlRnJvbUVxdWl2YWxlbmNlTm9kZShlcXVpdmFsZW5jZU5vZGUsIGNvbnRleHQpO1xuICAgIH0sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGVxdWl2YWxlbmNlO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJmaXJzdCIsInNlY29uZCIsImNvbXByZXNzIiwiYXJyYXlVdGlsaXRpZXMiLCJkZWZpbmUiLCJFcXVpdmFsZW5jZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0ZXJtcyIsImdldFRlcm1zIiwiZ2V0RXF1aXZhbGVuY2VOb2RlIiwiZ2V0Tm9kZSIsImVxdWl2YWxlbmNlTm9kZSIsImdldEdyb3VuZGVkVGVybXMiLCJkZWZpbmVkVmFyaWFibGVzIiwiZ3JvdW5kZWRUZXJtcyIsImZvckVhY2giLCJ0ZXJtIiwidGVybUdyb3VuZGVkIiwiaXNHcm91bmRlZCIsInRlcm1NYXRjaGVzR3JvdW5kZWRUZXJtIiwic29tZSIsImdyb3VuZGVkVGVybSIsImdyb3VuZGVkVGVybU5vZGUiLCJncm91bmRlZFRlcm1Ob2RlTWF0Y2hlcyIsIm1hdGNoVGVybU5vZGUiLCJwdXNoIiwiZ2V0SW5pdGlhbGx5R3JvdW5kZWRUZXJtcyIsImluaXRpYWxseUdyb3VuZGVkVGVybXMiLCJyZWR1Y2UiLCJ0ZXJtSW5pdGlhbGx5R3JvdW5kZWQiLCJpc0luaXRpYWxseUdyb3VuZGVkIiwiaW5pdGlhbGx5R3JvdW5kZWRUZXJtIiwiZ2V0SW1wbGljaXRseUdyb3VuZGVkVGVybXMiLCJpbXBsaWNpdGx5R3JvdW5kZWRUZXJtcyIsInRlcm1JbXBsaWNpdGx5R3JvdW5kZWQiLCJpc0ltcGxpY2l0bHlHcm91bmRlZCIsImltcGxpY2l0bHlHcm91bmRlZFRlcm0iLCJpc0Rpc2pvaW50RnJvbSIsImVxdWl2YWxlbmNlIiwiZGlzam9pbnRGcm9tIiwiZXZlcnlUZXJtIiwidGVybUVxdWF0ZXMiLCJlcXVhdGVUZXJtIiwiaW5pdGlhbGx5R3JvdW5kZWRUZXJtc0xlbmd0aCIsImxlbmd0aCIsImluaXRpYWxseUdyb3VuZGVkIiwiaW1wbGljaXRseUdyb3VuZGVkVGVybXNMZW5ndGgiLCJpbXBsaWNpdGx5R3JvdW5kZWQiLCJ0ZXJtQSIsInNvbWVUZXJtIiwidGVybUIiLCJ0ZXJtQUVxdWFsVG9UZXJtQiIsImlzRXF1YWxUbyIsImVxdWF0ZVRlcm1zIiwidGVybXNFcXVhdGUiLCJldmVyeSIsInRlcm1Ob2RlIiwidGVybU5vZGVNYXRjaGVzIiwiY29tYmluZVRlcm1zIiwiY29tYmluZWRUZXJtcyIsImNvbWJpbmVkVGVybUEiLCJjb21iaW5lZFRlcm1CIiwiY29tYmluZWRUZXJtRXF1YWxUb0NvbWJpbmVkVGVybUIiLCJtZXJnZWRXaXRoIiwiaW5zdGFudGlhdGUiLCJlcXVpdmFsZW5jZVN0cmluZyIsImVxdWl2YWxlbmNlU3RyaW5nRnJvbVRlcm1zIiwiaW5zdGFudGlhdGVFcXVpdmFsZW5jZSIsImVxdWl2YWxlbmNlRnJvbUVxdWl2YWxlbmNlTm9kZSIsInNvbWVPdGhlclRlcm0iLCJjYWxsYmFjayIsImZpbHRlciIsInJlc3VsdCIsIm5hbWUiLCJmcm9tRXF1YWxpdHkiLCJlcXVhbGl0eSIsIm1hcCIsInN0cmlwQnJhY2tldHNGcm9tVGVybSIsImZpcnN0VGVybSIsInNlY29uZFRlcm0iLCJmaXJzdFRlcm1FcXVhbFRvU2Vjb25kVGVybSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JB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
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2VxdWl2YWxlbmNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2NvbnRleHRcIjtcbmltcG9ydCB7IHN0cmlwQnJhY2tldHNGcm9tVGVybSB9IGZyb20gXCIuLi91dGlsaXRpZXMvYnJhY2tldHNcIjtcbmltcG9ydCB7IGluc3RhbnRpYXRlRXF1aXZhbGVuY2UgfSBmcm9tIFwiLi4vcHJvY2Vzcy9pbnN0YW50aWF0ZVwiO1xuaW1wb3J0IHsgZXF1aXZhbGVuY2VTdHJpbmdGcm9tVGVybXMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgZXF1aXZhbGVuY2VGcm9tRXF1aXZhbGVuY2VOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5cbmNvbnN0IHsgZmlyc3QsIHNlY29uZCwgY29tcHJlc3MgfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgRXF1aXZhbGVuY2UgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0ZXJtcykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnRlcm1zID0gdGVybXM7XG4gIH1cblxuICBnZXRUZXJtcygpIHtcbiAgICByZXR1cm4gdGhpcy50ZXJtcztcbiAgfVxuXG4gIGdldEVxdWl2YWxlbmNlTm9kZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgZXF1aXZhbGVuY2VOb2RlID0gbm9kZTsgLy8vXG5cbiAgICByZXR1cm4gZXF1aXZhbGVuY2VOb2RlO1xuICB9XG5cbiAgZ2V0R3JvdW5kZWRUZXJtcyhkZWZpbmVkVmFyaWFibGVzLCBncm91bmRlZFRlcm1zLCBjb250ZXh0KSB7XG4gICAgdGhpcy50ZXJtcy5mb3JFYWNoKCh0ZXJtKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtR3JvdW5kZWQgPSB0ZXJtLmlzR3JvdW5kZWQoZGVmaW5lZFZhcmlhYmxlcywgY29udGV4dCk7XG5cbiAgICAgIGlmICh0ZXJtR3JvdW5kZWQpIHtcbiAgICAgICAgY29uc3QgdGVybU1hdGNoZXNHcm91bmRlZFRlcm0gPSBncm91bmRlZFRlcm1zLnNvbWUoKGdyb3VuZGVkVGVybSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGdyb3VuZGVkVGVybU5vZGUgPSBncm91bmRlZFRlcm0uZ2V0Tm9kZSgpLFxuICAgICAgICAgICAgICAgIGdyb3VuZGVkVGVybU5vZGVNYXRjaGVzID0gdGVybS5tYXRjaFRlcm1Ob2RlKGdyb3VuZGVkVGVybU5vZGUpO1xuXG4gICAgICAgICAgaWYgKGdyb3VuZGVkVGVybU5vZGVNYXRjaGVzKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKCF0ZXJtTWF0Y2hlc0dyb3VuZGVkVGVybSkge1xuICAgICAgICAgIGNvbnN0IGdyb3VuZGVkVGVybSA9IHRlcm07XG5cbiAgICAgICAgICBncm91bmRlZFRlcm1zLnB1c2goZ3JvdW5kZWRUZXJtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0SW5pdGlhbGx5R3JvdW5kZWRUZXJtcyhjb250ZXh0KSB7XG4gICAgY29uc3QgaW5pdGlhbGx5R3JvdW5kZWRUZXJtcyA9IHRoaXMudGVybXMucmVkdWNlKChpbml0aWFsbHlHcm91bmRlZFRlcm1zLCB0ZXJtKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtSW5pdGlhbGx5R3JvdW5kZWQgPSB0ZXJtLmlzSW5pdGlhbGx5R3JvdW5kZWQoY29udGV4dCk7XG5cbiAgICAgIGlmICh0ZXJtSW5pdGlhbGx5R3JvdW5kZWQpIHtcbiAgICAgICAgY29uc3QgaW5pdGlhbGx5R3JvdW5kZWRUZXJtID0gdGVybTsgLy8vXG5cbiAgICAgICAgaW5pdGlhbGx5R3JvdW5kZWRUZXJtcy5wdXNoKGluaXRpYWxseUdyb3VuZGVkVGVybSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpbml0aWFsbHlHcm91bmRlZFRlcm1zO1xuICAgIH0sIFtdKTtcblxuICAgIHJldHVybiBpbml0aWFsbHlHcm91bmRlZFRlcm1zO1xuICB9XG5cbiAgZ2V0SW1wbGljaXRseUdyb3VuZGVkVGVybXMoZGVmaW5lZFZhcmlhYmxlcywgY29udGV4dCkge1xuICAgIGNvbnN0IGltcGxpY2l0bHlHcm91bmRlZFRlcm1zID0gdGhpcy50ZXJtcy5yZWR1Y2UoKGltcGxpY2l0bHlHcm91bmRlZFRlcm1zLCB0ZXJtKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtSW1wbGljaXRseUdyb3VuZGVkID0gdGVybS5pc0ltcGxpY2l0bHlHcm91bmRlZChkZWZpbmVkVmFyaWFibGVzLCBjb250ZXh0KTtcblxuICAgICAgaWYgKHRlcm1JbXBsaWNpdGx5R3JvdW5kZWQpIHtcbiAgICAgICAgY29uc3QgaW1wbGljaXRseUdyb3VuZGVkVGVybSA9IHRlcm07IC8vL1xuXG4gICAgICAgIGltcGxpY2l0bHlHcm91bmRlZFRlcm1zLnB1c2goaW1wbGljaXRseUdyb3VuZGVkVGVybSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpbXBsaWNpdGx5R3JvdW5kZWRUZXJtcztcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gaW1wbGljaXRseUdyb3VuZGVkVGVybXM7XG4gIH1cblxuICBpc0Rpc2pvaW50RnJvbShlcXVpdmFsZW5jZSkge1xuICAgIGNvbnN0IGRpc2pvaW50RnJvbSA9IGVxdWl2YWxlbmNlLmV2ZXJ5VGVybSgodGVybSkgPT4ge1xuICAgICAgY29uc3QgdGVybUVxdWF0ZXMgPSB0aGlzLmVxdWF0ZVRlcm0odGVybSk7XG5cbiAgICAgIGlmICghdGVybUVxdWF0ZXMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZGlzam9pbnRGcm9tO1xuICB9XG5cbiAgaXNJbml0aWFsbHlHcm91bmRlZChjb250ZXh0KSB7XG4gICAgY29uc3QgaW5pdGlhbGx5R3JvdW5kZWRUZXJtcyA9IHRoaXMuZ2V0SW5pdGlhbGx5R3JvdW5kZWRUZXJtcyhjb250ZXh0KSxcbiAgICAgICAgICBpbml0aWFsbHlHcm91bmRlZFRlcm1zTGVuZ3RoID0gaW5pdGlhbGx5R3JvdW5kZWRUZXJtcy5sZW5ndGgsXG4gICAgICAgICAgaW5pdGlhbGx5R3JvdW5kZWQgPSAoaW5pdGlhbGx5R3JvdW5kZWRUZXJtc0xlbmd0aCA+IDApO1xuXG4gICAgcmV0dXJuIGluaXRpYWxseUdyb3VuZGVkO1xuICB9XG5cbiAgaXNJbXBsaWNpdGx5R3JvdW5kZWQoZGVmaW5lZFZhcmlhYmxlcywgY29udGV4dCkge1xuICAgIGNvbnN0IGltcGxpY2l0bHlHcm91bmRlZFRlcm1zID0gdGhpcy5nZXRJbXBsaWNpdGx5R3JvdW5kZWRUZXJtcyhkZWZpbmVkVmFyaWFibGVzLCBjb250ZXh0KSxcbiAgICAgICAgICBpbXBsaWNpdGx5R3JvdW5kZWRUZXJtc0xlbmd0aCA9IGltcGxpY2l0bHlHcm91bmRlZFRlcm1zLmxlbmd0aCxcbiAgICAgICAgICBpbXBsaWNpdGx5R3JvdW5kZWQgPSAoaW1wbGljaXRseUdyb3VuZGVkVGVybXNMZW5ndGggPiAwKTtcblxuICAgIHJldHVybiBpbXBsaWNpdGx5R3JvdW5kZWQ7XG4gIH1cblxuICBlcXVhdGVUZXJtKHRlcm0pIHtcbiAgICBjb25zdCB0ZXJtQSA9IHRlcm0sIC8vL1xuICAgICAgICAgIHRlcm1FcXVhdGVzID0gdGhpcy5zb21lVGVybSgodGVybSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGVybUIgPSB0ZXJtLCAvLy9cbiAgICAgICAgICAgICAgICAgIHRlcm1BRXF1YWxUb1Rlcm1CID0gdGVybUEuaXNFcXVhbFRvKHRlcm1CKTtcblxuICAgICAgICAgICAgaWYgKHRlcm1BRXF1YWxUb1Rlcm1CKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgcmV0dXJuIHRlcm1FcXVhdGVzO1xuICB9XG5cbiAgZXF1YXRlVGVybXModGVybXMpIHtcbiAgICBjb25zdCB0ZXJtc0VxdWF0ZSA9IHRlcm1zLmV2ZXJ5KCh0ZXJtKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtRXF1YXRlcyA9IHRoaXMuZXF1YXRlVGVybSh0ZXJtKTtcblxuICAgICAgaWYgKHRlcm1FcXVhdGVzKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHRlcm1zRXF1YXRlO1xuICB9XG5cbiAgbWF0Y2hUZXJtTm9kZSh0ZXJtTm9kZSkge1xuICAgIGNvbnN0IHRlcm1Ob2RlTWF0Y2hlcyA9IHRoaXMudGVybXMuc29tZSgodGVybSkgPT4ge1xuICAgICAgY29uc3QgdGVybU5vZGVNYXRjaGVzID0gdGVybS5tYXRjaFRlcm1Ob2RlKHRlcm1Ob2RlKTtcblxuICAgICAgaWYgKHRlcm1Ob2RlTWF0Y2hlcykge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiB0ZXJtTm9kZU1hdGNoZXM7XG4gIH1cblxuICBjb21iaW5lVGVybXModGVybXMpIHtcbiAgICBjb25zdCBjb21iaW5lZFRlcm1zID0gW1xuICAgICAgLi4udGhpcy50ZXJtcyxcbiAgICAgIC4uLnRlcm1zXG4gICAgXTtcblxuICAgIGNvbXByZXNzKGNvbWJpbmVkVGVybXMsIChjb21iaW5lZFRlcm1BLCBjb21iaW5lZFRlcm1CKSA9PiB7XG4gICAgICBjb25zdCBjb21iaW5lZFRlcm1FcXVhbFRvQ29tYmluZWRUZXJtQiA9IGNvbWJpbmVkVGVybUEuaXNFcXVhbFRvKGNvbWJpbmVkVGVybUIpO1xuXG4gICAgICBpZiAoIWNvbWJpbmVkVGVybUVxdWFsVG9Db21iaW5lZFRlcm1CKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNvbWJpbmVkVGVybXM7XG4gIH1cblxuICBtZXJnZWRXaXRoKGVxdWl2YWxlbmNlLCBjb250ZXh0KSB7XG4gICAgaW5zdGFudGlhdGUoKGNvbnRleHQpID0+IHtcbiAgICAgIGxldCB0ZXJtcztcblxuICAgICAgdGVybXMgPSBlcXVpdmFsZW5jZS5nZXRUZXJtcygpO1xuXG4gICAgICBjb25zdCBjb21iaW5lZFRlcm1zID0gdGhpcy5jb21iaW5lVGVybXModGVybXMpO1xuXG4gICAgICB0ZXJtcyA9IGNvbWJpbmVkVGVybXM7ICAvLy9cblxuICAgICAgY29uc3QgZXF1aXZhbGVuY2VTdHJpbmcgPSBlcXVpdmFsZW5jZVN0cmluZ0Zyb21UZXJtcyh0ZXJtcyksXG4gICAgICAgICAgICBzdHJpbmcgPSBlcXVpdmFsZW5jZVN0cmluZywgIC8vL1xuICAgICAgICAgICAgZXF1aXZhbGVuY2VOb2RlID0gaW5zdGFudGlhdGVFcXVpdmFsZW5jZShzdHJpbmcsIGNvbnRleHQpO1xuXG4gICAgICBlcXVpdmFsZW5jZSA9IGVxdWl2YWxlbmNlRnJvbUVxdWl2YWxlbmNlTm9kZShlcXVpdmFsZW5jZU5vZGUsIGNvbnRleHQpO1xuICAgIH0sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGVxdWl2YWxlbmNlO1xuICB9XG5cbiAgc29tZU90aGVyVGVybSh0ZXJtTm9kZSwgY2FsbGJhY2spIHtcbiAgICBjb25zdCB0ZXJtcyA9IHRoaXMudGVybXMuZmlsdGVyKCh0ZXJtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0ZXJtTm9kZU1hdGNoZXMgPSB0ZXJtLm1hdGNoVGVybU5vZGUodGVybU5vZGUpO1xuXG4gICAgICAgICAgICBpZiAoIXRlcm1Ob2RlTWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSxcbiAgICAgICAgICByZXN1bHQgPSB0ZXJtcy5zb21lKGNhbGxiYWNrKTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzb21lVGVybShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy50ZXJtcy5zb21lKGNhbGxiYWNrKTsgfVxuXG4gIGV2ZXJ5VGVybShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy50ZXJtcy5ldmVyeShjYWxsYmFjayk7IH1cblxuICBzdGF0aWMgbmFtZSA9IFwiRXF1aXZhbGVuY2VcIjtcblxuICBzdGF0aWMgZnJvbUVxdWFsaXR5KGVxdWFsaXR5LCBjb250ZXh0KSB7XG4gICAgbGV0IGVxdWl2YWxlbmNlO1xuXG4gICAgbGV0IHRlcm1zO1xuXG4gICAgdGVybXMgPSBlcXVhbGl0eS5nZXRUZXJtcygpO1xuXG4gICAgdGVybXMgPSB0ZXJtcy5tYXAoKHRlcm0pID0+IHsgLy8vXG4gICAgICB0ZXJtID0gc3RyaXBCcmFja2V0c0Zyb21UZXJtKHRlcm0sIGNvbnRleHQpO1xuXG4gICAgICByZXR1cm4gdGVybTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGZpcnN0VGVybSA9IGZpcnN0KHRlcm1zKSxcbiAgICAgICAgICBzZWNvbmRUZXJtID0gc2Vjb25kKHRlcm1zKSxcbiAgICAgICAgICBmaXJzdFRlcm1FcXVhbFRvU2Vjb25kVGVybSA9IGZpcnN0VGVybS5pc0VxdWFsVG8oc2Vjb25kVGVybSk7XG5cbiAgICBpZiAoZmlyc3RUZXJtRXF1YWxUb1NlY29uZFRlcm0pIHtcbiAgICAgIGNvbnN0IHRlcm0gPSBmaXJzdFRlcm07IC8vL1xuXG4gICAgICB0ZXJtcyA9IFtcbiAgICAgICAgdGVybVxuICAgICAgXTtcbiAgICB9XG5cbiAgICBpbnN0YW50aWF0ZSgoY29udGV4dCkgPT4ge1xuICAgICAgY29uc3QgZXF1aXZhbGVuY2VTdHJpbmcgPSBlcXVpdmFsZW5jZVN0cmluZ0Zyb21UZXJtcyh0ZXJtcyksXG4gICAgICAgICAgICBzdHJpbmcgPSBlcXVpdmFsZW5jZVN0cmluZywgIC8vL1xuICAgICAgICAgICAgZXF1aXZhbGVuY2VOb2RlID0gaW5zdGFudGlhdGVFcXVpdmFsZW5jZShzdHJpbmcsIGNvbnRleHQpO1xuXG4gICAgICBlcXVpdmFsZW5jZSA9IGVxdWl2YWxlbmNlRnJvbUVxdWl2YWxlbmNlTm9kZShlcXVpdmFsZW5jZU5vZGUsIGNvbnRleHQpO1xuICAgIH0sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGVxdWl2YWxlbmNlO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJmaXJzdCIsInNlY29uZCIsImNvbXByZXNzIiwiYXJyYXlVdGlsaXRpZXMiLCJkZWZpbmUiLCJFcXVpdmFsZW5jZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0ZXJtcyIsImdldFRlcm1zIiwiZ2V0RXF1aXZhbGVuY2VOb2RlIiwiZ2V0Tm9kZSIsImVxdWl2YWxlbmNlTm9kZSIsImdldEdyb3VuZGVkVGVybXMiLCJkZWZpbmVkVmFyaWFibGVzIiwiZ3JvdW5kZWRUZXJtcyIsImZvckVhY2giLCJ0ZXJtIiwidGVybUdyb3VuZGVkIiwiaXNHcm91bmRlZCIsInRlcm1NYXRjaGVzR3JvdW5kZWRUZXJtIiwic29tZSIsImdyb3VuZGVkVGVybSIsImdyb3VuZGVkVGVybU5vZGUiLCJncm91bmRlZFRlcm1Ob2RlTWF0Y2hlcyIsIm1hdGNoVGVybU5vZGUiLCJwdXNoIiwiZ2V0SW5pdGlhbGx5R3JvdW5kZWRUZXJtcyIsImluaXRpYWxseUdyb3VuZGVkVGVybXMiLCJyZWR1Y2UiLCJ0ZXJtSW5pdGlhbGx5R3JvdW5kZWQiLCJpc0luaXRpYWxseUdyb3VuZGVkIiwiaW5pdGlhbGx5R3JvdW5kZWRUZXJtIiwiZ2V0SW1wbGljaXRseUdyb3VuZGVkVGVybXMiLCJpbXBsaWNpdGx5R3JvdW5kZWRUZXJtcyIsInRlcm1JbXBsaWNpdGx5R3JvdW5kZWQiLCJpc0ltcGxpY2l0bHlHcm91bmRlZCIsImltcGxpY2l0bHlHcm91bmRlZFRlcm0iLCJpc0Rpc2pvaW50RnJvbSIsImVxdWl2YWxlbmNlIiwiZGlzam9pbnRGcm9tIiwiZXZlcnlUZXJtIiwidGVybUVxdWF0ZXMiLCJlcXVhdGVUZXJtIiwiaW5pdGlhbGx5R3JvdW5kZWRUZXJtc0xlbmd0aCIsImxlbmd0aCIsImluaXRpYWxseUdyb3VuZGVkIiwiaW1wbGljaXRseUdyb3VuZGVkVGVybXNMZW5ndGgiLCJpbXBsaWNpdGx5R3JvdW5kZWQiLCJ0ZXJtQSIsInNvbWVUZXJtIiwidGVybUIiLCJ0ZXJtQUVxdWFsVG9UZXJtQiIsImlzRXF1YWxUbyIsImVxdWF0ZVRlcm1zIiwidGVybXNFcXVhdGUiLCJldmVyeSIsInRlcm1Ob2RlIiwidGVybU5vZGVNYXRjaGVzIiwiY29tYmluZVRlcm1zIiwiY29tYmluZWRUZXJtcyIsImNvbWJpbmVkVGVybUEiLCJjb21iaW5lZFRlcm1CIiwiY29tYmluZWRUZXJtRXF1YWxUb0NvbWJpbmVkVGVybUIiLCJtZXJnZWRXaXRoIiwiaW5zdGFudGlhdGUiLCJlcXVpdmFsZW5jZVN0cmluZyIsImVxdWl2YWxlbmNlU3RyaW5nRnJvbVRlcm1zIiwiaW5zdGFudGlhdGVFcXVpdmFsZW5jZSIsImVxdWl2YWxlbmNlRnJvbUVxdWl2YWxlbmNlTm9kZSIsInNvbWVPdGhlclRlcm0iLCJjYWxsYmFjayIsImZpbHRlciIsInJlc3VsdCIsIm5hbWUiLCJmcm9tRXF1YWxpdHkiLCJlcXVhbGl0eSIsIm1hcCIsInN0cmlwQnJhY2tldHNGcm9tVGVybSIsImZpcnN0VGVybSIsInNlY29uZFRlcm0iLCJmaXJzdFRlcm1FcXVhbFRvU2Vjb25kVGVybSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBY0E7OztlQUFBOzs7Z0NBWndCOzJCQUNPOzBCQUVSO3lCQUNLOzBCQUNVOzZCQUNDO3dCQUNJO3lCQUNJ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
|
package/lib/process/equate.js
CHANGED
|
@@ -45,8 +45,8 @@ class EquationalPass extends _zip.default {
|
|
|
45
45
|
}
|
|
46
46
|
if (!success) {
|
|
47
47
|
if (leftEquivalence !== null) {
|
|
48
|
-
success = leftEquivalence.someOtherTerm(
|
|
49
|
-
const
|
|
48
|
+
success = leftEquivalence.someOtherTerm(leftTermNode, (otherTerm)=>{
|
|
49
|
+
const leftTerm = otherTerm, leftTermNode = leftTerm.getNode(), descended = descend(leftTermNode, rightTermNode, context);
|
|
50
50
|
if (descended) {
|
|
51
51
|
return true;
|
|
52
52
|
}
|
|
@@ -55,8 +55,8 @@ class EquationalPass extends _zip.default {
|
|
|
55
55
|
}
|
|
56
56
|
if (!success) {
|
|
57
57
|
if (rightEquivalence !== null) {
|
|
58
|
-
success = rightEquivalence.someOtherTerm(
|
|
59
|
-
const
|
|
58
|
+
success = rightEquivalence.someOtherTerm(rightTermNode, (otherTerm)=>{
|
|
59
|
+
const rightTerm = otherTerm, rightTermNode = rightTerm.getNode(), descended = descend(leftTermNode, rightTermNode, context);
|
|
60
60
|
if (descended) {
|
|
61
61
|
return true;
|
|
62
62
|
}
|
|
@@ -79,11 +79,11 @@ class EquationalPass extends _zip.default {
|
|
|
79
79
|
];
|
|
80
80
|
}
|
|
81
81
|
const equationalPass = new EquationalPass();
|
|
82
|
-
function equateTerms(
|
|
82
|
+
function equateTerms(leftTerm, rightTerm, context) {
|
|
83
83
|
let termsEquate = false;
|
|
84
|
-
const leftTermString =
|
|
84
|
+
const leftTermString = leftTerm.getString(), rightTermString = rightTerm.getString();
|
|
85
85
|
context.trace(`Equating the '${leftTermString}' and '${rightTermString}' terms...`);
|
|
86
|
-
const leftTermNode =
|
|
86
|
+
const leftTermNode = leftTerm.getNode(), rightTermNode = rightTerm.getNode(), generalNode = leftTermNode, specificNode = rightTermNode, success = equationalPass.run(generalNode, specificNode, context);
|
|
87
87
|
if (success) {
|
|
88
88
|
termsEquate = true;
|
|
89
89
|
}
|
|
@@ -110,4 +110,4 @@ function descend(leftTermNode, rightTermNode, context) {
|
|
|
110
110
|
return descended;
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9jZXNzL2VxdWF0ZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcXVlcnlVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tcXVlcnlcIjtcblxuaW1wb3J0IFppcFBhc3MgZnJvbSBcIi4uL3Bhc3MvemlwXCI7XG5cbmltcG9ydCB7IHN0cmlwQnJhY2tldHNGcm9tVGVybU5vZGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2JyYWNrZXRzXCI7XG5pbXBvcnQgeyBmaW5kRXF1aXZhbGVuY2VCeVRlcm1Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lcXVpdmFsZW5jZXNcIjtcblxuY29uc3QgeyBub2RlUXVlcnkgfSA9IHF1ZXJ5VXRpbGl0aWVzO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm1cIik7XG5cbmNsYXNzIEVxdWF0aW9uYWxQYXNzIGV4dGVuZHMgWmlwUGFzcyB7XG4gIHN0YXRpYyBtYXBzID0gW1xuICAgIHtcbiAgICAgIGdlbmVyYWxOb2RlUXVlcnk6IHRlcm1Ob2RlUXVlcnksICAvLy9cbiAgICAgIHNwZWNpZmljTm9kZVF1ZXJ5OiB0ZXJtTm9kZVF1ZXJ5LCAvLy9cbiAgICAgIHJ1bjogKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgY29udGV4dCkgPT4ge1xuICAgICAgICBsZXQgc3VjY2VzcyA9IGZhbHNlO1xuXG4gICAgICAgIGxlZnRUZXJtTm9kZSA9IHN0cmlwQnJhY2tldHNGcm9tVGVybU5vZGUobGVmdFRlcm1Ob2RlKTsgLy8vXG4gICAgICAgIHJpZ2h0VGVybU5vZGUgPSBzdHJpcEJyYWNrZXRzRnJvbVRlcm1Ob2RlKHJpZ2h0VGVybU5vZGUpOyAvLy9cblxuICAgICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgICBjb25zdCBlcXVpdmFsZW5jZXMgPSBjb250ZXh0LmdldEVxdWl2YWxlbmNlcygpLFxuICAgICAgICAgICAgICAgIGxlZnRFcXVpdmFsZW5jZSA9IGZpbmRFcXVpdmFsZW5jZUJ5VGVybU5vZGUoZXF1aXZhbGVuY2VzLCBsZWZ0VGVybU5vZGUpLFxuICAgICAgICAgICAgICAgIHJpZ2h0RXF1aXZhbGVuY2UgPSBmaW5kRXF1aXZhbGVuY2VCeVRlcm1Ob2RlKGVxdWl2YWxlbmNlcywgcmlnaHRUZXJtTm9kZSk7XG5cbiAgICAgICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgICAgIGlmICgobGVmdEVxdWl2YWxlbmNlICE9PSBudWxsKSAmJiAocmlnaHRFcXVpdmFsZW5jZSAhPT0gbnVsbCkgJiYgKGxlZnRFcXVpdmFsZW5jZSA9PT0gcmlnaHRFcXVpdmFsZW5jZSkpIHtcbiAgICAgICAgICAgICAgc3VjY2VzcyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKCFzdWNjZXNzKSB7XG4gICAgICAgICAgICBpZiAobGVmdEVxdWl2YWxlbmNlICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIHN1Y2Nlc3MgPSBsZWZ0RXF1aXZhbGVuY2Uuc29tZU90aGVyVGVybShsZWZ0VGVybSwgKG90aGVyVGVybSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlZnRUZXJtID0gb3RoZXJUZXJtLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgICBsZWZ0VGVybU5vZGUgPSBsZWZ0VGVybS5nZXROb2RlKCksXG4gICAgICAgICAgICAgICAgICAgICAgcmlnaHRUZXJtTm9kZSA9IHJpZ2h0VGVybS5nZXROb2RlKCksXG4gICAgICAgICAgICAgICAgICAgICAgZGVzY2VuZGVkID0gZGVzY2VuZChsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGRlc2NlbmRlZCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgICAgIGlmIChyaWdodEVxdWl2YWxlbmNlICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIHN1Y2Nlc3MgPSByaWdodEVxdWl2YWxlbmNlLnNvbWVPdGhlclRlcm0ocmlnaHRUZXJtLCAob3RoZXJUZXJtKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmlnaHRUZXJtID0gb3RoZXJUZXJtLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgICBsZWZ0VGVybU5vZGUgPSBsZWZ0VGVybS5nZXROb2RlKCksXG4gICAgICAgICAgICAgICAgICAgICAgcmlnaHRUZXJtTm9kZSA9IHJpZ2h0VGVybS5nZXROb2RlKCksXG4gICAgICAgICAgICAgICAgICAgICAgZGVzY2VuZGVkID0gZGVzY2VuZChsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGRlc2NlbmRlZCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgICBjb25zdCBkZXB0aCA9IDEsXG4gICAgICAgICAgICAgICAgbGVmdFRlcm1Ob2RlTWF0Y2hlc1JpZ2h0VGVybU5vZGUgPSBsZWZ0VGVybU5vZGUubWF0Y2gocmlnaHRUZXJtTm9kZSwgZGVwdGgpO1xuXG4gICAgICAgICAgaWYgKGxlZnRUZXJtTm9kZU1hdGNoZXNSaWdodFRlcm1Ob2RlKSB7XG4gICAgICAgICAgICBjb25zdCBkZXNjZW5kZWQgPSBkZXNjZW5kKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgICAgIGlmIChkZXNjZW5kZWQpIHtcbiAgICAgICAgICAgICAgc3VjY2VzcyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHN1Y2Nlc3M7XG4gICAgICB9XG4gICAgfVxuICBdO1xufVxuXG5jb25zdCBlcXVhdGlvbmFsUGFzcyA9IG5ldyBFcXVhdGlvbmFsUGFzcygpO1xuXG5leHBvcnQgZnVuY3Rpb24gZXF1YXRlVGVybXMobGVmdFRlcm0sIHJpZ2h0VGVybSwgY29udGV4dCkge1xuICBsZXQgdGVybXNFcXVhdGUgPSBmYWxzZTtcblxuICBjb25zdCBsZWZ0VGVybVN0cmluZyA9IGxlZnRUZXJtLmdldFN0cmluZygpLFxuICAgICAgICByaWdodFRlcm1TdHJpbmcgPSByaWdodFRlcm0uZ2V0U3RyaW5nKCk7XG5cbiAgY29udGV4dC50cmFjZShgRXF1YXRpbmcgdGhlICcke2xlZnRUZXJtU3RyaW5nfScgYW5kICcke3JpZ2h0VGVybVN0cmluZ30nIHRlcm1zLi4uYCk7XG5cbiAgY29uc3QgbGVmdFRlcm1Ob2RlID0gbGVmdFRlcm0uZ2V0Tm9kZSgpLFxuICAgICAgICByaWdodFRlcm1Ob2RlID0gcmlnaHRUZXJtLmdldE5vZGUoKSxcbiAgICAgICAgZ2VuZXJhbE5vZGUgPSBsZWZ0VGVybU5vZGUsIC8vL1xuICAgICAgICBzcGVjaWZpY05vZGUgPSByaWdodFRlcm1Ob2RlLCAvLy9cbiAgICAgICAgc3VjY2VzcyA9IGVxdWF0aW9uYWxQYXNzLnJ1bihnZW5lcmFsTm9kZSwgc3BlY2lmaWNOb2RlLCBjb250ZXh0KTtcblxuICBpZiAoc3VjY2Vzcykge1xuICAgIHRlcm1zRXF1YXRlID0gdHJ1ZTtcbiAgfVxuXG4gIGlmICh0ZXJtc0VxdWF0ZSkge1xuICAgIGNvbnRleHQuZGVidWcoYC4uLmVxdWF0ZWQgdGhlICcke2xlZnRUZXJtU3RyaW5nfScgYW5kICcke3JpZ2h0VGVybVN0cmluZ30nIHRlcm1zLmApO1xuICB9XG5cbiAgcmV0dXJuIHRlcm1zRXF1YXRlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXF1YXRlU3RhdGVtZW50cyhsZWZ0U3RhdGVtZW50LCByaWdodFN0YXRlbWVudCwgY29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50c0VxdWF0ZSA9IGZhbHNlO1xuXG4gIGNvbnN0IGxlZnRTdGF0ZW1lbnRTdHJpbmcgPSBsZWZ0U3RhdGVtZW50LmdldFN0cmluZygpLFxuICAgICAgICByaWdodFN0YXRlbWVudFN0cmluZyA9IHJpZ2h0U3RhdGVtZW50LmdldFN0cmluZygpO1xuXG4gIGNvbnRleHQudHJhY2UoYEVxdWF0aW5nIHRoZSAnJHtsZWZ0U3RhdGVtZW50U3RyaW5nfScgYW5kICcke3JpZ2h0U3RhdGVtZW50U3RyaW5nfScgc3RhdGVtZW50cy4uLmApO1xuXG4gIGNvbnN0IGxlZnRTdGF0ZW1lbnROb2RlID0gbGVmdFN0YXRlbWVudC5nZXROb2RlKCksXG4gICAgICAgIHJpZ2h0U3RhdGVtZW50Tm9kZSA9IHJpZ2h0U3RhdGVtZW50LmdldE5vZGUoKSxcbiAgICAgICAgZ2VuZXJhbE5vZGUgPSBsZWZ0U3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgIHNwZWNpZmljTm9kZSA9IHJpZ2h0U3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgIHN1Y2Nlc3MgPSBlcXVhdGlvbmFsUGFzcy5ydW4oZ2VuZXJhbE5vZGUsIHNwZWNpZmljTm9kZSwgY29udGV4dCk7XG5cbiAgaWYgKHN1Y2Nlc3MpIHtcbiAgICBzdGF0ZW1lbnRzRXF1YXRlID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChzdGF0ZW1lbnRzRXF1YXRlKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uZXF1YXRlZCB0aGUgJyR7bGVmdFN0YXRlbWVudFN0cmluZ30nIGFuZCAnJHtyaWdodFN0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudHMuYCk7XG4gIH1cblxuICByZXR1cm4gc3RhdGVtZW50c0VxdWF0ZTtcbn1cblxuZnVuY3Rpb24gZGVzY2VuZChsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgbGVmdE5vblRlcm1pbmFsTm9kZSA9IGxlZnRUZXJtTm9kZSwgLy8vXG4gICAgICAgIHJpZ2h0Tm9uVGVybWluYWxOb2RlID0gcmlnaHRUZXJtTm9kZSwgLy8vXG4gICAgICAgIGxlZnROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzID0gbGVmdE5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgIHJpZ2h0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcyA9IHJpZ2h0Tm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgbGVmdENoaWxkTm9kZXMgPSBsZWZ0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcywgLy8vXG4gICAgICAgIHJpZ2h0Q2hpbGROb2RlcyA9IHJpZ2h0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcywgLy8vXG4gICAgICAgIGRlc2NlbmRlZCA9IGVxdWF0aW9uYWxQYXNzLmRlc2NlbmQobGVmdENoaWxkTm9kZXMsIHJpZ2h0Q2hpbGROb2RlcywgY29udGV4dCk7XG5cbiAgcmV0dXJuIGRlc2NlbmRlZDtcbn1cbiJdLCJuYW1lcyI6WyJlcXVhdGVTdGF0ZW1lbnRzIiwiZXF1YXRlVGVybXMiLCJub2RlUXVlcnkiLCJxdWVyeVV0aWxpdGllcyIsInRlcm1Ob2RlUXVlcnkiLCJFcXVhdGlvbmFsUGFzcyIsIlppcFBhc3MiLCJtYXBzIiwiZ2VuZXJhbE5vZGVRdWVyeSIsInNwZWNpZmljTm9kZVF1ZXJ5IiwicnVuIiwibGVmdFRlcm1Ob2RlIiwicmlnaHRUZXJtTm9kZSIsImNvbnRleHQiLCJzdWNjZXNzIiwic3RyaXBCcmFja2V0c0Zyb21UZXJtTm9kZSIsImVxdWl2YWxlbmNlcyIsImdldEVxdWl2YWxlbmNlcyIsImxlZnRFcXVpdmFsZW5jZSIsImZpbmRFcXVpdmFsZW5jZUJ5VGVybU5vZGUiLCJyaWdodEVxdWl2YWxlbmNlIiwic29tZU90aGVyVGVybSIsImxlZnRUZXJtIiwib3RoZXJUZXJtIiwiZ2V0Tm9kZSIsInJpZ2h0VGVybSIsImRlc2NlbmRlZCIsImRlc2NlbmQiLCJkZXB0aCIsImxlZnRUZXJtTm9kZU1hdGNoZXNSaWdodFRlcm1Ob2RlIiwibWF0Y2giLCJlcXVhdGlvbmFsUGFzcyIsInRlcm1zRXF1YXRlIiwibGVmdFRlcm1TdHJpbmciLCJnZXRTdHJpbmciLCJyaWdodFRlcm1TdHJpbmciLCJ0cmFjZSIsImdlbmVyYWxOb2RlIiwic3BlY2lmaWNOb2RlIiwiZGVidWciLCJsZWZ0U3RhdGVtZW50IiwicmlnaHRTdGF0ZW1lbnQiLCJzdGF0ZW1lbnRzRXF1YXRlIiwibGVmdFN0YXRlbWVudFN0cmluZyIsInJpZ2h0U3RhdGVtZW50U3RyaW5nIiwibGVmdFN0YXRlbWVudE5vZGUiLCJyaWdodFN0YXRlbWVudE5vZGUiLCJsZWZ0Tm9uVGVybWluYWxOb2RlIiwicmlnaHROb25UZXJtaW5hbE5vZGUiLCJsZWZ0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJyaWdodE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMiLCJsZWZ0Q2hpbGROb2RlcyIsInJpZ2h0Q2hpbGROb2RlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBZ0hnQkE7ZUFBQUE7O1FBekJBQztlQUFBQTs7OzRCQXJGZTs0REFFWDswQkFFc0I7OEJBQ0E7Ozs7OztBQUUxQyxNQUFNLEVBQUVDLFNBQVMsRUFBRSxHQUFHQywwQkFBYztBQUVwQyxNQUFNQyxnQkFBZ0JGLFVBQVU7QUFFaEMsTUFBTUcsdUJBQXVCQyxZQUFPO0lBQ2xDLE9BQU9DLE9BQU87UUFDWjtZQUNFQyxrQkFBa0JKO1lBQ2xCSyxtQkFBbUJMO1lBQ25CTSxLQUFLLENBQUNDLGNBQWNDLGVBQWVDO2dCQUNqQyxJQUFJQyxVQUFVO2dCQUVkSCxlQUFlSSxJQUFBQSxtQ0FBeUIsRUFBQ0osZUFBZSxHQUFHO2dCQUMzREMsZ0JBQWdCRyxJQUFBQSxtQ0FBeUIsRUFBQ0gsZ0JBQWdCLEdBQUc7Z0JBRTdELElBQUksQ0FBQ0UsU0FBUztvQkFDWixNQUFNRSxlQUFlSCxRQUFRSSxlQUFl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
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9jZXNzL2VxdWF0ZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcXVlcnlVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tcXVlcnlcIjtcblxuaW1wb3J0IFppcFBhc3MgZnJvbSBcIi4uL3Bhc3MvemlwXCI7XG5cbmltcG9ydCB7IHN0cmlwQnJhY2tldHNGcm9tVGVybU5vZGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2JyYWNrZXRzXCI7XG5pbXBvcnQgeyBmaW5kRXF1aXZhbGVuY2VCeVRlcm1Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lcXVpdmFsZW5jZXNcIjtcblxuY29uc3QgeyBub2RlUXVlcnkgfSA9IHF1ZXJ5VXRpbGl0aWVzO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm1cIik7XG5cbmNsYXNzIEVxdWF0aW9uYWxQYXNzIGV4dGVuZHMgWmlwUGFzcyB7XG4gIHN0YXRpYyBtYXBzID0gW1xuICAgIHtcbiAgICAgIGdlbmVyYWxOb2RlUXVlcnk6IHRlcm1Ob2RlUXVlcnksICAvLy9cbiAgICAgIHNwZWNpZmljTm9kZVF1ZXJ5OiB0ZXJtTm9kZVF1ZXJ5LCAvLy9cbiAgICAgIHJ1bjogKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgY29udGV4dCkgPT4ge1xuICAgICAgICBsZXQgc3VjY2VzcyA9IGZhbHNlO1xuXG4gICAgICAgIGxlZnRUZXJtTm9kZSA9IHN0cmlwQnJhY2tldHNGcm9tVGVybU5vZGUobGVmdFRlcm1Ob2RlKTsgLy8vXG4gICAgICAgIHJpZ2h0VGVybU5vZGUgPSBzdHJpcEJyYWNrZXRzRnJvbVRlcm1Ob2RlKHJpZ2h0VGVybU5vZGUpOyAvLy9cblxuICAgICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgICBjb25zdCBlcXVpdmFsZW5jZXMgPSBjb250ZXh0LmdldEVxdWl2YWxlbmNlcygpLFxuICAgICAgICAgICAgICAgIGxlZnRFcXVpdmFsZW5jZSA9IGZpbmRFcXVpdmFsZW5jZUJ5VGVybU5vZGUoZXF1aXZhbGVuY2VzLCBsZWZ0VGVybU5vZGUpLFxuICAgICAgICAgICAgICAgIHJpZ2h0RXF1aXZhbGVuY2UgPSBmaW5kRXF1aXZhbGVuY2VCeVRlcm1Ob2RlKGVxdWl2YWxlbmNlcywgcmlnaHRUZXJtTm9kZSk7XG5cbiAgICAgICAgICBpZiAoIXN1Y2Nlc3MpIHtcbiAgICAgICAgICAgIGlmICgobGVmdEVxdWl2YWxlbmNlICE9PSBudWxsKSAmJiAocmlnaHRFcXVpdmFsZW5jZSAhPT0gbnVsbCkgJiYgKGxlZnRFcXVpdmFsZW5jZSA9PT0gcmlnaHRFcXVpdmFsZW5jZSkpIHtcbiAgICAgICAgICAgICAgc3VjY2VzcyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKCFzdWNjZXNzKSB7XG4gICAgICAgICAgICBpZiAobGVmdEVxdWl2YWxlbmNlICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIHN1Y2Nlc3MgPSBsZWZ0RXF1aXZhbGVuY2Uuc29tZU90aGVyVGVybShsZWZ0VGVybU5vZGUsIChvdGhlclRlcm0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBsZWZ0VGVybSA9IG90aGVyVGVybSwgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgbGVmdFRlcm1Ob2RlID0gbGVmdFRlcm0uZ2V0Tm9kZSgpLFxuICAgICAgICAgICAgICAgICAgICAgIGRlc2NlbmRlZCA9IGRlc2NlbmQobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCBjb250ZXh0KTtcblxuICAgICAgICAgICAgICAgIGlmIChkZXNjZW5kZWQpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKCFzdWNjZXNzKSB7XG4gICAgICAgICAgICBpZiAocmlnaHRFcXVpdmFsZW5jZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICBzdWNjZXNzID0gcmlnaHRFcXVpdmFsZW5jZS5zb21lT3RoZXJUZXJtKHJpZ2h0VGVybU5vZGUsIChvdGhlclRlcm0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByaWdodFRlcm0gPSBvdGhlclRlcm0sIC8vL1xuICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0VGVybU5vZGUgPSByaWdodFRlcm0uZ2V0Tm9kZSgpLFxuICAgICAgICAgICAgICAgICAgICAgIGRlc2NlbmRlZCA9IGRlc2NlbmQobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCBjb250ZXh0KTtcblxuICAgICAgICAgICAgICAgIGlmIChkZXNjZW5kZWQpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFzdWNjZXNzKSB7XG4gICAgICAgICAgY29uc3QgZGVwdGggPSAxLFxuICAgICAgICAgICAgICAgIGxlZnRUZXJtTm9kZU1hdGNoZXNSaWdodFRlcm1Ob2RlID0gbGVmdFRlcm1Ob2RlLm1hdGNoKHJpZ2h0VGVybU5vZGUsIGRlcHRoKTtcblxuICAgICAgICAgIGlmIChsZWZ0VGVybU5vZGVNYXRjaGVzUmlnaHRUZXJtTm9kZSkge1xuICAgICAgICAgICAgY29uc3QgZGVzY2VuZGVkID0gZGVzY2VuZChsZWZ0VGVybU5vZGUsIHJpZ2h0VGVybU5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICBpZiAoZGVzY2VuZGVkKSB7XG4gICAgICAgICAgICAgIHN1Y2Nlc3MgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzdWNjZXNzO1xuICAgICAgfVxuICAgIH1cbiAgXTtcbn1cblxuY29uc3QgZXF1YXRpb25hbFBhc3MgPSBuZXcgRXF1YXRpb25hbFBhc3MoKTtcblxuZXhwb3J0IGZ1bmN0aW9uIGVxdWF0ZVRlcm1zKGxlZnRUZXJtLCByaWdodFRlcm0sIGNvbnRleHQpIHtcbiAgbGV0IHRlcm1zRXF1YXRlID0gZmFsc2U7XG5cbiAgY29uc3QgbGVmdFRlcm1TdHJpbmcgPSBsZWZ0VGVybS5nZXRTdHJpbmcoKSxcbiAgICAgICAgcmlnaHRUZXJtU3RyaW5nID0gcmlnaHRUZXJtLmdldFN0cmluZygpO1xuXG4gIGNvbnRleHQudHJhY2UoYEVxdWF0aW5nIHRoZSAnJHtsZWZ0VGVybVN0cmluZ30nIGFuZCAnJHtyaWdodFRlcm1TdHJpbmd9JyB0ZXJtcy4uLmApO1xuXG4gIGNvbnN0IGxlZnRUZXJtTm9kZSA9IGxlZnRUZXJtLmdldE5vZGUoKSxcbiAgICAgICAgcmlnaHRUZXJtTm9kZSA9IHJpZ2h0VGVybS5nZXROb2RlKCksXG4gICAgICAgIGdlbmVyYWxOb2RlID0gbGVmdFRlcm1Ob2RlLCAvLy9cbiAgICAgICAgc3BlY2lmaWNOb2RlID0gcmlnaHRUZXJtTm9kZSwgLy8vXG4gICAgICAgIHN1Y2Nlc3MgPSBlcXVhdGlvbmFsUGFzcy5ydW4oZ2VuZXJhbE5vZGUsIHNwZWNpZmljTm9kZSwgY29udGV4dCk7XG5cbiAgaWYgKHN1Y2Nlc3MpIHtcbiAgICB0ZXJtc0VxdWF0ZSA9IHRydWU7XG4gIH1cblxuICBpZiAodGVybXNFcXVhdGUpIHtcbiAgICBjb250ZXh0LmRlYnVnKGAuLi5lcXVhdGVkIHRoZSAnJHtsZWZ0VGVybVN0cmluZ30nIGFuZCAnJHtyaWdodFRlcm1TdHJpbmd9JyB0ZXJtcy5gKTtcbiAgfVxuXG4gIHJldHVybiB0ZXJtc0VxdWF0ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVxdWF0ZVN0YXRlbWVudHMobGVmdFN0YXRlbWVudCwgcmlnaHRTdGF0ZW1lbnQsIGNvbnRleHQpIHtcbiAgbGV0IHN0YXRlbWVudHNFcXVhdGUgPSBmYWxzZTtcblxuICBjb25zdCBsZWZ0U3RhdGVtZW50U3RyaW5nID0gbGVmdFN0YXRlbWVudC5nZXRTdHJpbmcoKSxcbiAgICAgICAgcmlnaHRTdGF0ZW1lbnRTdHJpbmcgPSByaWdodFN0YXRlbWVudC5nZXRTdHJpbmcoKTtcblxuICBjb250ZXh0LnRyYWNlKGBFcXVhdGluZyB0aGUgJyR7bGVmdFN0YXRlbWVudFN0cmluZ30nIGFuZCAnJHtyaWdodFN0YXRlbWVudFN0cmluZ30nIHN0YXRlbWVudHMuLi5gKTtcblxuICBjb25zdCBsZWZ0U3RhdGVtZW50Tm9kZSA9IGxlZnRTdGF0ZW1lbnQuZ2V0Tm9kZSgpLFxuICAgICAgICByaWdodFN0YXRlbWVudE5vZGUgPSByaWdodFN0YXRlbWVudC5nZXROb2RlKCksXG4gICAgICAgIGdlbmVyYWxOb2RlID0gbGVmdFN0YXRlbWVudE5vZGUsIC8vL1xuICAgICAgICBzcGVjaWZpY05vZGUgPSByaWdodFN0YXRlbWVudE5vZGUsIC8vL1xuICAgICAgICBzdWNjZXNzID0gZXF1YXRpb25hbFBhc3MucnVuKGdlbmVyYWxOb2RlLCBzcGVjaWZpY05vZGUsIGNvbnRleHQpO1xuXG4gIGlmIChzdWNjZXNzKSB7XG4gICAgc3RhdGVtZW50c0VxdWF0ZSA9IHRydWU7XG4gIH1cblxuICBpZiAoc3RhdGVtZW50c0VxdWF0ZSkge1xuICAgIGNvbnRleHQuZGVidWcoYC4uLmVxdWF0ZWQgdGhlICcke2xlZnRTdGF0ZW1lbnRTdHJpbmd9JyBhbmQgJyR7cmlnaHRTdGF0ZW1lbnRTdHJpbmd9JyBzdGF0ZW1lbnRzLmApO1xuICB9XG5cbiAgcmV0dXJuIHN0YXRlbWVudHNFcXVhdGU7XG59XG5cbmZ1bmN0aW9uIGRlc2NlbmQobGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IGxlZnROb25UZXJtaW5hbE5vZGUgPSBsZWZ0VGVybU5vZGUsIC8vL1xuICAgICAgICByaWdodE5vblRlcm1pbmFsTm9kZSA9IHJpZ2h0VGVybU5vZGUsIC8vL1xuICAgICAgICBsZWZ0Tm9uVGVybWluYWxOb2RlQ2hpbGROb2RlcyA9IGxlZnROb25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICByaWdodE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMgPSByaWdodE5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgIGxlZnRDaGlsZE5vZGVzID0gbGVmdE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMsIC8vL1xuICAgICAgICByaWdodENoaWxkTm9kZXMgPSByaWdodE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMsIC8vL1xuICAgICAgICBkZXNjZW5kZWQgPSBlcXVhdGlvbmFsUGFzcy5kZXNjZW5kKGxlZnRDaGlsZE5vZGVzLCByaWdodENoaWxkTm9kZXMsIGNvbnRleHQpO1xuXG4gIHJldHVybiBkZXNjZW5kZWQ7XG59XG4iXSwibmFtZXMiOlsiZXF1YXRlU3RhdGVtZW50cyIsImVxdWF0ZVRlcm1zIiwibm9kZVF1ZXJ5IiwicXVlcnlVdGlsaXRpZXMiLCJ0ZXJtTm9kZVF1ZXJ5IiwiRXF1YXRpb25hbFBhc3MiLCJaaXBQYXNzIiwibWFwcyIsImdlbmVyYWxOb2RlUXVlcnkiLCJzcGVjaWZpY05vZGVRdWVyeSIsInJ1biIsImxlZnRUZXJtTm9kZSIsInJpZ2h0VGVybU5vZGUiLCJjb250ZXh0Iiwic3VjY2VzcyIsInN0cmlwQnJhY2tldHNGcm9tVGVybU5vZGUiLCJlcXVpdmFsZW5jZXMiLCJnZXRFcXVpdmFsZW5jZXMiLCJsZWZ0RXF1aXZhbGVuY2UiLCJmaW5kRXF1aXZhbGVuY2VCeVRlcm1Ob2RlIiwicmlnaHRFcXVpdmFsZW5jZSIsInNvbWVPdGhlclRlcm0iLCJvdGhlclRlcm0iLCJsZWZ0VGVybSIsImdldE5vZGUiLCJkZXNjZW5kZWQiLCJkZXNjZW5kIiwicmlnaHRUZXJtIiwiZGVwdGgiLCJsZWZ0VGVybU5vZGVNYXRjaGVzUmlnaHRUZXJtTm9kZSIsIm1hdGNoIiwiZXF1YXRpb25hbFBhc3MiLCJ0ZXJtc0VxdWF0ZSIsImxlZnRUZXJtU3RyaW5nIiwiZ2V0U3RyaW5nIiwicmlnaHRUZXJtU3RyaW5nIiwidHJhY2UiLCJnZW5lcmFsTm9kZSIsInNwZWNpZmljTm9kZSIsImRlYnVnIiwibGVmdFN0YXRlbWVudCIsInJpZ2h0U3RhdGVtZW50Iiwic3RhdGVtZW50c0VxdWF0ZSIsImxlZnRTdGF0ZW1lbnRTdHJpbmciLCJyaWdodFN0YXRlbWVudFN0cmluZyIsImxlZnRTdGF0ZW1lbnROb2RlIiwicmlnaHRTdGF0ZW1lbnROb2RlIiwibGVmdE5vblRlcm1pbmFsTm9kZSIsInJpZ2h0Tm9uVGVybWluYWxOb2RlIiwibGVmdE5vblRlcm1pbmFsTm9kZUNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwicmlnaHROb25UZXJtaW5hbE5vZGVDaGlsZE5vZGVzIiwibGVmdENoaWxkTm9kZXMiLCJyaWdodENoaWxkTm9kZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQThHZ0JBO2VBQUFBOztRQXpCQUM7ZUFBQUE7Ozs0QkFuRmU7NERBRVg7MEJBRXNCOzhCQUNBOzs7Ozs7QUFFMUMsTUFBTSxFQUFFQyxTQUFTLEVBQUUsR0FBR0MsMEJBQWM7QUFFcEMsTUFBTUMsZ0JBQWdCRixVQUFVO0FBRWhDLE1BQU1HLHVCQUF1QkMsWUFBTztJQUNsQyxPQUFPQyxPQUFPO1FBQ1o7WUFDRUMsa0JBQWtCSjtZQUNsQkssbUJBQW1CTDtZQUNuQk0sS0FBSyxDQUFDQyxjQUFjQyxlQUFlQztnQkFDakMsSUFBSUMsVUFBVTtnQkFFZEgsZUFBZUksSUFBQUEsbUNBQXlCLEVBQUNKLGVBQWUsR0FBRztnQkFDM0RDLGdCQUFnQkcsSUFBQUEsbUNBQXlCLEVBQUNILGdCQUFnQixHQUFHO2dCQUU3RCxJQUFJLENBQUNFLFNBQVM7b0JBQ1osTUFBTUUsZUFBZUgsUUFBUUksZUFBZSxJQUN0Q0Msa0JBQWtCQyxJQUFBQSx1Q0FBeUIsRUFBQ0gsY0FBY0wsZUFDMURTLG1CQUFtQkQsSUFBQUEsdUNBQXlCLEVBQUNILGNBQWNKO29CQUVqRSxJQUFJLENBQUNFLFNBQVM7d0JBQ1os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
|
package/package.json
CHANGED
|
@@ -188,13 +188,11 @@ export default define(class Equivalence extends Element {
|
|
|
188
188
|
return equivalence;
|
|
189
189
|
}
|
|
190
190
|
|
|
191
|
-
someOtherTerm(
|
|
192
|
-
const
|
|
193
|
-
|
|
194
|
-
const termB = term, ///
|
|
195
|
-
termAEqualToTermB = termA.isEqualTo(termB);
|
|
191
|
+
someOtherTerm(termNode, callback) {
|
|
192
|
+
const terms = this.terms.filter((term) => {
|
|
193
|
+
const termNodeMatches = term.matchTermNode(termNode);
|
|
196
194
|
|
|
197
|
-
if (!
|
|
195
|
+
if (!termNodeMatches) {
|
|
198
196
|
return true;
|
|
199
197
|
}
|
|
200
198
|
}),
|
package/src/process/equate.js
CHANGED
|
@@ -35,10 +35,9 @@ class EquationalPass extends ZipPass {
|
|
|
35
35
|
|
|
36
36
|
if (!success) {
|
|
37
37
|
if (leftEquivalence !== null) {
|
|
38
|
-
success = leftEquivalence.someOtherTerm(
|
|
38
|
+
success = leftEquivalence.someOtherTerm(leftTermNode, (otherTerm) => {
|
|
39
39
|
const leftTerm = otherTerm, ///
|
|
40
40
|
leftTermNode = leftTerm.getNode(),
|
|
41
|
-
rightTermNode = rightTerm.getNode(),
|
|
42
41
|
descended = descend(leftTermNode, rightTermNode, context);
|
|
43
42
|
|
|
44
43
|
if (descended) {
|
|
@@ -50,9 +49,8 @@ class EquationalPass extends ZipPass {
|
|
|
50
49
|
|
|
51
50
|
if (!success) {
|
|
52
51
|
if (rightEquivalence !== null) {
|
|
53
|
-
success = rightEquivalence.someOtherTerm(
|
|
52
|
+
success = rightEquivalence.someOtherTerm(rightTermNode, (otherTerm) => {
|
|
54
53
|
const rightTerm = otherTerm, ///
|
|
55
|
-
leftTermNode = leftTerm.getNode(),
|
|
56
54
|
rightTermNode = rightTerm.getNode(),
|
|
57
55
|
descended = descend(leftTermNode, rightTermNode, context);
|
|
58
56
|
|