occam-verify-cli 0.0.965 → 0.0.968
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/bin/action/verify.js +0 -14
- package/bin/main.js +27 -0
- package/lib/metavariable.js +6 -37
- package/lib/unify/termWithTerm.js +10 -4
- package/lib/utilities/equivalences.js +20 -28
- package/lib/variable.js +1 -9
- package/lib/verifier/statementAsCombinator.js +2 -2
- package/lib/verify/assertion/contained.js +3 -9
- package/lib/verify/assertion/defined.js +3 -3
- package/lib/verify/assertion/type.js +2 -5
- package/lib/verify/equality.js +3 -1
- package/lib/verify/proofStep.js +14 -8
- package/lib/verify/statement/qualified.js +13 -38
- package/lib/verify/statement/unqualified.js +55 -14
- package/lib/verify/statement.js +25 -4
- package/lib/verify/statementGivenMetaType.js +16 -7
- package/package.json +1 -1
- package/src/metavariable.js +3 -42
- package/src/unify/termWithTerm.js +14 -6
- package/src/utilities/equivalences.js +14 -32
- package/src/variable.js +0 -8
- package/src/verifier/statementAsCombinator.js +1 -1
- package/src/verify/assertion/contained.js +2 -4
- package/src/verify/assertion/defined.js +2 -2
- package/src/verify/assertion/type.js +2 -7
- package/src/verify/equality.js +5 -0
- package/src/verify/proofStep.js +19 -9
- package/src/verify/statement/qualified.js +12 -54
- package/src/verify/statement/unqualified.js +16 -9
- package/src/verify/statement.js +24 -0
- package/src/verify/statementGivenMetaType.js +21 -10
package/bin/action/verify.js
CHANGED
|
@@ -53,25 +53,11 @@ function verifyAction(argument, log) {
|
|
|
53
53
|
return;
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
let now;
|
|
57
|
-
|
|
58
|
-
now = Date.now();
|
|
59
|
-
|
|
60
56
|
const releaseVerified = verifyRelease(releaseName, releaseContextMap);
|
|
61
57
|
|
|
62
58
|
if (!releaseVerified) {
|
|
63
59
|
log.warning(`The '${name}' project or package context cannot be verified.`);
|
|
64
|
-
|
|
65
|
-
return;
|
|
66
60
|
}
|
|
67
|
-
|
|
68
|
-
const then = now; ///
|
|
69
|
-
|
|
70
|
-
now = Date.now();
|
|
71
|
-
|
|
72
|
-
const seconds = Math.floor(now - then) / 1000;
|
|
73
|
-
|
|
74
|
-
log.info(`Verification time ${seconds} seconds.`);
|
|
75
61
|
});
|
|
76
62
|
}
|
|
77
63
|
|
package/bin/main.js
CHANGED
|
@@ -31,8 +31,12 @@ function main(command, argument, options) {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
case VERIFY_COMMAND: {
|
|
34
|
+
let now = startClock();
|
|
35
|
+
|
|
34
36
|
verifyAction(argument, log);
|
|
35
37
|
|
|
38
|
+
stopClock(now, log);
|
|
39
|
+
|
|
36
40
|
break;
|
|
37
41
|
}
|
|
38
42
|
|
|
@@ -45,8 +49,12 @@ function main(command, argument, options) {
|
|
|
45
49
|
default: {
|
|
46
50
|
argument = command; ///
|
|
47
51
|
|
|
52
|
+
let now = startClock();
|
|
53
|
+
|
|
48
54
|
verifyAction(argument, log);
|
|
49
55
|
|
|
56
|
+
stopClock(now, log);
|
|
57
|
+
|
|
50
58
|
break;
|
|
51
59
|
}
|
|
52
60
|
}
|
|
@@ -65,3 +73,22 @@ function main(command, argument, options) {
|
|
|
65
73
|
}
|
|
66
74
|
|
|
67
75
|
module.exports = main;
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
function startClock() {
|
|
79
|
+
let now;
|
|
80
|
+
|
|
81
|
+
now = Date.now();
|
|
82
|
+
|
|
83
|
+
return now;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
function stopClock(now, log) {
|
|
87
|
+
const then = now; ///
|
|
88
|
+
|
|
89
|
+
now = Date.now();
|
|
90
|
+
|
|
91
|
+
const seconds = Math.floor(now - then) / 1000;
|
|
92
|
+
|
|
93
|
+
log.info(`Time ${seconds} seconds.`);
|
|
94
|
+
}
|
package/lib/metavariable.js
CHANGED
|
@@ -2,22 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
default: function() {
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
13
8
|
return Metavariable;
|
|
14
|
-
},
|
|
15
|
-
unifyTermWithTermType: function() {
|
|
16
|
-
return unifyTermWithTermType;
|
|
17
9
|
}
|
|
18
10
|
});
|
|
19
|
-
var
|
|
20
|
-
var _array = require("./utilities/array");
|
|
11
|
+
var _termGivenType = /*#__PURE__*/ _interop_require_default(require("./verify/termGivenType"));
|
|
21
12
|
var _query = require("./utilities/query");
|
|
22
13
|
var _string = require("./utilities/string");
|
|
23
14
|
var _name = require("./utilities/name");
|
|
@@ -107,7 +98,7 @@ var Metavariable = /*#__PURE__*/ function() {
|
|
|
107
98
|
} else if (termNode === null && this.termType === null) {
|
|
108
99
|
matchesNode = true;
|
|
109
100
|
} else if (termNode !== null && this.termType !== null) {
|
|
110
|
-
var termUnifiedWithTermType =
|
|
101
|
+
var type = this.termType, termUnifiedWithTermType = (0, _termGivenType.default)(termNode, type, localContext);
|
|
111
102
|
matchesNode = termUnifiedWithTermType; ///
|
|
112
103
|
}
|
|
113
104
|
}
|
|
@@ -135,27 +126,5 @@ var Metavariable = /*#__PURE__*/ function() {
|
|
|
135
126
|
]);
|
|
136
127
|
return Metavariable;
|
|
137
128
|
}();
|
|
138
|
-
function unifyTermWithTermType(termNode, termType, localContext) {
|
|
139
|
-
var termUnifiedWithTermType;
|
|
140
|
-
var type = termType, terms = [], termVerified = (0, _term.default)(termNode, terms, localContext, function() {
|
|
141
|
-
var verifiedAhead = false;
|
|
142
|
-
var firstTerm = (0, _array.first)(terms), term = firstTerm, _$termType = term.getType(), termTypeEqualToOrSubTypeOfType = _$termType.isEqualToOrSubTypeOf(type);
|
|
143
|
-
if (termTypeEqualToOrSubTypeOfType) {
|
|
144
|
-
verifiedAhead = true;
|
|
145
|
-
}
|
|
146
|
-
return verifiedAhead;
|
|
147
|
-
});
|
|
148
|
-
termUnifiedWithTermType = termVerified; ///
|
|
149
|
-
return termUnifiedWithTermType;
|
|
150
|
-
}
|
|
151
|
-
function termTypeFromMetavariableNode(metavariableNode, fileContext) {
|
|
152
|
-
var termType = null;
|
|
153
|
-
var typeNode = typeNodeQuery(metavariableNode);
|
|
154
|
-
if (typeNode !== null) {
|
|
155
|
-
var type = fileContext.findTypeByTypeNode(typeNode);
|
|
156
|
-
termType = type; ///
|
|
157
|
-
}
|
|
158
|
-
return termType;
|
|
159
|
-
}
|
|
160
129
|
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhdmFyaWFibGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlUZXJtR2l2ZW5UeXBlIGZyb20gXCIuL3ZlcmlmeS90ZXJtR2l2ZW5UeXBlXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgbmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25hbWVcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdmFyaWFibGUvYXJndW1lbnQvdGVybSFcIiksXG4gICAgICB0eXBlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGF2YXJpYWJsZS9hcmd1bWVudC90eXBlIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWV0YXZhcmlhYmxlIHtcbiAgY29uc3RydWN0b3Iobm9kZSwgbmFtZSwgdGVybVR5cGUsIG1ldGFUeXBlKSB7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMudGVybVR5cGUgPSB0ZXJtVHlwZTtcbiAgICB0aGlzLm1ldGFUeXBlID0gbWV0YVR5cGU7XG4gIH1cblxuICBnZXROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGU7XG4gIH1cblxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRUZXJtVHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50ZXJtVHlwZTtcbiAgfVxuXG4gIGdldE1ldGFUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFUeXBlO1xuICB9XG5cbiAgZ2V0TWV0YVR5cGVOYW1lKCkge1xuICAgIGNvbnN0IG1ldGFUeXBlTmFtZSA9IHRoaXMubWV0YVR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgcmV0dXJuIG1ldGFUeXBlTmFtZTtcbiAgfVxuXG4gIG1hdGNoTmFtZShuYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc05hbWUgPSAodGhpcy5uYW1lID09PSBuYW1lKTtcblxuICAgIHJldHVybiBtYXRjaGVzTmFtZTtcbiAgfVxuXG4gIG1hdGNoTm9kZShub2RlLCBsb2NhbENvbnRleHQpIHtcbiAgICBsZXQgbWF0Y2hlc05vZGUgPSBmYWxzZTtcblxuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgdHlwZU5vZGUgPSB0eXBlTm9kZVF1ZXJ5KG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgaWYgKHR5cGVOb2RlID09PSBudWxsKSB7XG4gICAgICBjb25zdCBuYW1lID0gbmFtZUZyb21NZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgICBpZiAodGhpcy5uYW1lID09PSBuYW1lKSB7XG4gICAgICAgIGNvbnN0IHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeShtZXRhdmFyaWFibGVOb2RlKTtcblxuICAgICAgICBpZiAoZmFsc2UpIHtcbiAgICAgICAgICAvLy9cbiAgICAgICAgfSBlbHNlIGlmICgodGVybU5vZGUgPT09IG51bGwpICYmICh0aGlzLnRlcm1UeXBlID09PSBudWxsKSkge1xuICAgICAgICAgIG1hdGNoZXNOb2RlID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIGlmICgodGVybU5vZGUgIT09IG51bGwpICYmICh0aGlzLnRlcm1UeXBlICE9PSBudWxsKSkge1xuICAgICAgICAgIGNvbnN0IHR5cGUgPSB0aGlzLnRlcm1UeXBlLCAgLy8vXG4gICAgICAgICAgICAgICAgdGVybVVuaWZpZWRXaXRoVGVybVR5cGUgPSB2ZXJpZnlUZXJtR2l2ZW5UeXBlKHRlcm1Ob2RlLCB0eXBlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgICAgbWF0Y2hlc05vZGUgPSB0ZXJtVW5pZmllZFdpdGhUZXJtVHlwZTsgIC8vL1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hdGNoZXNOb2RlO1xuICB9XG5cbiAgYXNTdHJpbmcodG9rZW5zKSB7XG4gICAgY29uc3QgbWV0YVR5cGVOYW1lID0gdGhpcy5tZXRhVHlwZS5nZXROYW1lKCk7XG5cbiAgICBsZXQgc3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMubm9kZSwgdG9rZW5zKTtcblxuICAgIHN0cmluZyA9IGAke3N0cmluZ306JHttZXRhVHlwZU5hbWV9YDsgLy8vXG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob2RlTmFtZVRlcm1UeXBlQW5kTWV0YVR5cGUobm9kZSwgbmFtZSwgdGVybVR5cGUsIG1ldGFUeXBlKSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlID0gbmV3IE1ldGF2YXJpYWJsZShub2RlLCBuYW1lLCB0ZXJtVHlwZSwgbWV0YVR5cGUpO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIk1ldGF2YXJpYWJsZSIsInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ0eXBlTm9kZVF1ZXJ5Iiwibm9kZSIsIm5hbWUiLCJ0ZXJtVHlwZSIsIm1ldGFUeXBlIiwiZ2V0Tm9kZSIsImdldE5hbWUiLCJnZXRUZXJtVHlwZSIsImdldE1ldGFUeXBlIiwiZ2V0TWV0YVR5cGVOYW1lIiwibWV0YVR5cGVOYW1lIiwibWF0Y2hOYW1lIiwibWF0Y2hlc05hbWUiLCJtYXRjaE5vZGUiLCJsb2NhbENvbnRleHQiLCJtYXRjaGVzTm9kZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJ0eXBlTm9kZSIsIm5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsInRlcm1Ob2RlIiwidHlwZSIsInRlcm1VbmlmaWVkV2l0aFRlcm1UeXBlIiwidmVyaWZ5VGVybUdpdmVuVHlwZSIsImFzU3RyaW5nIiwidG9rZW5zIiwic3RyaW5nIiwibm9kZUFzU3RyaW5n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
|
|
@@ -10,12 +10,18 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
var _equivalences = require("../utilities/equivalences");
|
|
12
12
|
function unifyTermWithTerm(leftTermNode, rightTermNode, localContext) {
|
|
13
|
-
var termUnifiedWithTerm
|
|
14
|
-
var
|
|
15
|
-
if (
|
|
13
|
+
var termUnifiedWithTerm;
|
|
14
|
+
var leftTermNodeMatchesRightTermNode = leftTermNode.match(rightTermNode);
|
|
15
|
+
if (leftTermNodeMatchesRightTermNode) {
|
|
16
16
|
termUnifiedWithTerm = true;
|
|
17
|
+
} else {
|
|
18
|
+
var equivalences = localContext.getEquivalences(), termNodes = [
|
|
19
|
+
leftTermNode,
|
|
20
|
+
rightTermNode
|
|
21
|
+
], equivalence = (0, _equivalences.findEquivalenceByTermNodes)(equivalences, termNodes);
|
|
22
|
+
termUnifiedWithTerm = equivalence !== null;
|
|
17
23
|
}
|
|
18
24
|
return termUnifiedWithTerm;
|
|
19
25
|
}
|
|
20
26
|
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmeS90ZXJtV2l0aFRlcm0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGZpbmRFcXVpdmFsZW5jZUJ5VGVybU5vZGVzIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lcXVpdmFsZW5jZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdW5pZnlUZXJtV2l0aFRlcm0obGVmdFRlcm1Ob2RlLCByaWdodFRlcm1Ob2RlLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHRlcm1VbmlmaWVkV2l0aFRlcm07XG5cbiAgY29uc3QgbGVmdFRlcm1Ob2RlTWF0Y2hlc1JpZ2h0VGVybU5vZGUgPSBsZWZ0VGVybU5vZGUubWF0Y2gocmlnaHRUZXJtTm9kZSk7XG5cbiAgaWYgKGxlZnRUZXJtTm9kZU1hdGNoZXNSaWdodFRlcm1Ob2RlKSB7XG4gICAgdGVybVVuaWZpZWRXaXRoVGVybSA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZXF1aXZhbGVuY2VzID0gbG9jYWxDb250ZXh0LmdldEVxdWl2YWxlbmNlcygpLFxuICAgICAgICAgIHRlcm1Ob2RlcyA9IFtcbiAgICAgICAgICAgIGxlZnRUZXJtTm9kZSxcbiAgICAgICAgICAgIHJpZ2h0VGVybU5vZGVcbiAgICAgICAgICBdLFxuICAgICAgICAgIGVxdWl2YWxlbmNlID0gZmluZEVxdWl2YWxlbmNlQnlUZXJtTm9kZXMoZXF1aXZhbGVuY2VzLCB0ZXJtTm9kZXMpO1xuXG4gICAgdGVybVVuaWZpZWRXaXRoVGVybSA9IChlcXVpdmFsZW5jZSAhPT0gbnVsbCk7XG4gIH1cblxuICByZXR1cm4gdGVybVVuaWZpZWRXaXRoVGVybTtcbn1cbiJdLCJuYW1lcyI6WyJ1bmlmeVRlcm1XaXRoVGVybSIsImxlZnRUZXJtTm9kZSIsInJpZ2h0VGVybU5vZGUiLCJsb2NhbENvbnRleHQiLCJ0ZXJtVW5pZmllZFdpdGhUZXJtIiwibGVmdFRlcm1Ob2RlTWF0Y2hlc1JpZ2h0VGVybU5vZGUiLCJtYXRjaCIsImVxdWl2YWxlbmNlcyIsImdldEVxdWl2YWxlbmNlcyIsInRlcm1Ob2RlcyIsImVxdWl2YWxlbmNlIiwiZmluZEVxdWl2YWxlbmNlQnlUZXJtTm9kZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUlBOzs7ZUFBd0JBOzs7NEJBRm1CO0FBRTVCLFNBQVNBLGtCQUFrQkMsWUFBWSxFQUFFQyxhQUFhLEVBQUVDLFlBQVk7SUFDakYsSUFBSUM7SUFFSixJQUFNQyxtQ0FBbUNKLGFBQWFLLEtBQUssQ0FBQ0o7SUFFNUQsSUFBSUcsa0NBQWtDO1FBQ3BDRCxzQkFBc0I7SUFDeEIsT0FBTztRQUNMLElBQU1HLGVBQWVKLGFBQWFLLGVBQWUsSUFDM0NDLFlBQVk7WUFDVlI7WUFDQUM7U0FDRCxFQUNEUSxjQUFjQyxJQUFBQSx3Q0FBMEIsRUFBQ0osY0FBY0U7UUFFN0RMLHNCQUF1Qk0sZ0JBQWdCO0lBQ3pDO0lBRUEsT0FBT047QUFDVCJ9
|
|
@@ -9,12 +9,12 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
areTermNodesEqual: function() {
|
|
13
|
-
return areTermNodesEqual;
|
|
14
|
-
},
|
|
15
12
|
findEquivalenceByTerm: function() {
|
|
16
13
|
return findEquivalenceByTerm;
|
|
17
14
|
},
|
|
15
|
+
findEquivalenceByTermNodes: function() {
|
|
16
|
+
return findEquivalenceByTermNodes;
|
|
17
|
+
},
|
|
18
18
|
findEquivalenceByType: function() {
|
|
19
19
|
return findEquivalenceByType;
|
|
20
20
|
},
|
|
@@ -25,6 +25,7 @@ _export(exports, {
|
|
|
25
25
|
return mergeEquivalences;
|
|
26
26
|
}
|
|
27
27
|
});
|
|
28
|
+
var _equivalence = /*#__PURE__*/ _interop_require_default(require("../equivalence"));
|
|
28
29
|
var _array = require("../utilities/array");
|
|
29
30
|
function _array_like_to_array(arr, len) {
|
|
30
31
|
if (len == null || len > arr.length) len = arr.length;
|
|
@@ -34,6 +35,11 @@ function _array_like_to_array(arr, len) {
|
|
|
34
35
|
function _array_without_holes(arr) {
|
|
35
36
|
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
36
37
|
}
|
|
38
|
+
function _interop_require_default(obj) {
|
|
39
|
+
return obj && obj.__esModule ? obj : {
|
|
40
|
+
default: obj
|
|
41
|
+
};
|
|
42
|
+
}
|
|
37
43
|
function _iterable_to_array(iter) {
|
|
38
44
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
39
45
|
}
|
|
@@ -63,7 +69,7 @@ function mergeEquivalences(equivalencesA, equivalencesB, localContext) {
|
|
|
63
69
|
var equivalenceA = findEquivalenceByType(equivalencesA, type, localContext), equivalenceB = findEquivalenceByType(equivalencesB, type, localContext);
|
|
64
70
|
if (equivalenceA !== null && equivalenceB !== null) {
|
|
65
71
|
var leftEquivalence = equivalenceA, rightEquivalence = equivalenceB; ///
|
|
66
|
-
equivalence =
|
|
72
|
+
equivalence = _equivalence.default.merge(leftEquivalence, rightEquivalence);
|
|
67
73
|
} else if (equivalenceA !== null) {
|
|
68
74
|
equivalence = equivalenceA; ///
|
|
69
75
|
} else if (equivalenceB !== null) {
|
|
@@ -73,20 +79,6 @@ function mergeEquivalences(equivalencesA, equivalencesB, localContext) {
|
|
|
73
79
|
});
|
|
74
80
|
return equivalences;
|
|
75
81
|
}
|
|
76
|
-
function areTermNodesEqual(leftTermNode, rightTermNode, equivalences) {
|
|
77
|
-
var termNodesEqual;
|
|
78
|
-
var leftTermNodeMatchesRightTermNode = leftTermNode.match(rightTermNode);
|
|
79
|
-
if (leftTermNodeMatchesRightTermNode) {
|
|
80
|
-
termNodesEqual = true;
|
|
81
|
-
} else {
|
|
82
|
-
var termNodes = [
|
|
83
|
-
leftTermNode,
|
|
84
|
-
rightTermNode
|
|
85
|
-
], equivalence = findEquivalenceByTermNodes(equivalences, termNodes);
|
|
86
|
-
termNodesEqual = equivalence !== null;
|
|
87
|
-
}
|
|
88
|
-
return termNodesEqual;
|
|
89
|
-
}
|
|
90
82
|
function findEquivalenceByType(equivalences, type, localContext) {
|
|
91
83
|
var equivalence = equivalences.find(function(equivalence) {
|
|
92
84
|
var equivalenceMatchesType = equivalence.matchType(type, localContext);
|
|
@@ -105,6 +97,15 @@ function findEquivalenceByTerm(equivalences, term) {
|
|
|
105
97
|
}) || null;
|
|
106
98
|
return equivalence;
|
|
107
99
|
}
|
|
100
|
+
function findEquivalenceByTermNodes(equivalences, termNodes) {
|
|
101
|
+
var equivalence = equivalences.find(function(equivalence) {
|
|
102
|
+
var equivalenceMatchesTerms = equivalence.matchTermNodes(termNodes);
|
|
103
|
+
if (equivalenceMatchesTerms) {
|
|
104
|
+
return true;
|
|
105
|
+
}
|
|
106
|
+
}) || null;
|
|
107
|
+
return equivalence;
|
|
108
|
+
}
|
|
108
109
|
function groundedTermsAndDefinedVariablesFromFromEquivalences(equivalences, groundedTerms, definedVariables, localContext) {
|
|
109
110
|
var groundedEquivalences, remainingEquivalences, initiallyGroundedEquivalences, implicitlyGroundedEquivalences;
|
|
110
111
|
remainingEquivalences = [];
|
|
@@ -138,15 +139,6 @@ function typesFromEquivalences(equivalences, localContext) {
|
|
|
138
139
|
});
|
|
139
140
|
return types;
|
|
140
141
|
}
|
|
141
|
-
function findEquivalenceByTermNodes(equivalences, termNodes) {
|
|
142
|
-
var equivalence = equivalences.find(function(equivalence) {
|
|
143
|
-
var equivalenceMatchesTerms = equivalence.matchTermNodes(termNodes);
|
|
144
|
-
if (equivalenceMatchesTerms) {
|
|
145
|
-
return true;
|
|
146
|
-
}
|
|
147
|
-
}) || null;
|
|
148
|
-
return equivalence;
|
|
149
|
-
}
|
|
150
142
|
function definedVariablesFromGroundedTerms(groundedTerms, definedVariables, localContext) {
|
|
151
143
|
var terms = groundedTerms, variables = definedVariables; ///
|
|
152
144
|
terms.forEach(function(term) {
|
|
@@ -182,4 +174,4 @@ function groundedTermsFromGroundedEquivalencesAndDefinedVariables(groundedEquiva
|
|
|
182
174
|
});
|
|
183
175
|
}
|
|
184
176
|
|
|
185
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZXF1aXZhbGVuY2VzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBwdXNoLCBjb21wcmVzcywgc2VwYXJhdGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXJnZUVxdWl2YWxlbmNlcyhlcXVpdmFsZW5jZXNBLCBlcXVpdmFsZW5jZXNCLCBsb2NhbENvbnRleHQpIHtcbiAgY29uc3QgdHlwZXNBID0gdHlwZXNGcm9tRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlc0EsIGxvY2FsQ29udGV4dCksXG4gICAgICAgIHR5cGVzQiA9IHR5cGVzRnJvbUVxdWl2YWxlbmNlcyhlcXVpdmFsZW5jZXNCLCBsb2NhbENvbnRleHQpLFxuICAgICAgICB0eXBlcyA9IFtcbiAgICAgICAgICAuLi50eXBlc0EsXG4gICAgICAgICAgLi4udHlwZXNCXG4gICAgICAgIF07XG5cbiAgY29tcHJlc3ModHlwZXMsICh0eXBlQSwgdHlwZUIpID0+IHtcbiAgICBpZiAodHlwZUEgPT09IHR5cGVCKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIGNvbnN0IGVxdWl2YWxlbmNlcyA9IHR5cGVzLm1hcCgodHlwZSkgPT4ge1xuICAgIGxldCBlcXVpdmFsZW5jZTtcblxuICAgIGNvbnN0IGVxdWl2YWxlbmNlQSA9IGZpbmRFcXVpdmFsZW5jZUJ5VHlwZShlcXVpdmFsZW5jZXNBLCB0eXBlLCBsb2NhbENvbnRleHQpLFxuICAgICAgICAgIGVxdWl2YWxlbmNlQiA9IGZpbmRFcXVpdmFsZW5jZUJ5VHlwZShlcXVpdmFsZW5jZXNCLCB0eXBlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKChlcXVpdmFsZW5jZUEgIT09IG51bGwpICYmIChlcXVpdmFsZW5jZUIgIT09IG51bGwpKSB7XG4gICAgICBjb25zdCBsZWZ0RXF1aXZhbGVuY2UgPSBlcXVpdmFsZW5jZUEsIC8vL1xuICAgICAgICAgICAgcmlnaHRFcXVpdmFsZW5jZSA9IGVxdWl2YWxlbmNlQjsgIC8vL1xuXG4gICAgICBlcXVpdmFsZW5jZSA9IEVxdWl2YWxlbmNlLm1lcmdlKGxlZnRFcXVpdmFsZW5jZSwgcmlnaHRFcXVpdmFsZW5jZSk7XG4gICAgfSBlbHNlIGlmIChlcXVpdmFsZW5jZUEgIT09IG51bGwpIHtcbiAgICAgIGVxdWl2YWxlbmNlID0gZXF1aXZhbGVuY2VBOyAvLy9cbiAgICB9IGVsc2UgaWYgKGVxdWl2YWxlbmNlQiAhPT0gbnVsbCkge1xuICAgICAgZXF1aXZhbGVuY2UgPSBlcXVpdmFsZW5jZUI7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBlcXVpdmFsZW5jZTtcbiAgfSk7XG5cbiAgcmV0dXJuIGVxdWl2YWxlbmNlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFyZVRlcm1Ob2Rlc0VxdWFsKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgZXF1aXZhbGVuY2VzKSB7XG4gIGxldCB0ZXJtTm9kZXNFcXVhbDtcblxuICBjb25zdCBsZWZ0VGVybU5vZGVNYXRjaGVzUmlnaHRUZXJtTm9kZSA9IGxlZnRUZXJtTm9kZS5tYXRjaChyaWdodFRlcm1Ob2RlKTtcblxuICBpZiAobGVmdFRlcm1Ob2RlTWF0Y2hlc1JpZ2h0VGVybU5vZGUpIHtcbiAgICB0ZXJtTm9kZXNFcXVhbCA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdGVybU5vZGVzID0gW1xuICAgICAgICAgICAgbGVmdFRlcm1Ob2RlLFxuICAgICAgICAgICAgcmlnaHRUZXJtTm9kZVxuICAgICAgICAgIF0sXG4gICAgICAgICAgZXF1aXZhbGVuY2UgPSBmaW5kRXF1aXZhbGVuY2VCeVRlcm1Ob2RlcyhlcXVpdmFsZW5jZXMsIHRlcm1Ob2Rlcyk7XG5cbiAgICB0ZXJtTm9kZXNFcXVhbCA9IChlcXVpdmFsZW5jZSAhPT0gbnVsbCk7XG4gIH1cblxuICByZXR1cm4gdGVybU5vZGVzRXF1YWw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kRXF1aXZhbGVuY2VCeVR5cGUoZXF1aXZhbGVuY2VzLCB0eXBlLCBsb2NhbENvbnRleHQpIHtcbiAgY29uc3QgZXF1aXZhbGVuY2UgPSBlcXVpdmFsZW5jZXMuZmluZCgoZXF1aXZhbGVuY2UpID0+IHtcbiAgICBjb25zdCBlcXVpdmFsZW5jZU1hdGNoZXNUeXBlID0gZXF1aXZhbGVuY2UubWF0Y2hUeXBlKHR5cGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoZXF1aXZhbGVuY2VNYXRjaGVzVHlwZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KSB8fCBudWxsO1xuXG4gIHJldHVybiBlcXVpdmFsZW5jZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRFcXVpdmFsZW5jZUJ5VGVybShlcXVpdmFsZW5jZXMsIHRlcm0pIHtcbiAgY29uc3QgZXF1aXZhbGVuY2UgPSBlcXVpdmFsZW5jZXMuZmluZCgoZXF1aXZhbGVuY2UpID0+IHtcbiAgICBjb25zdCBlcXVpdmFsZW5jZU1hdGNoZXNUZXJtID0gZXF1aXZhbGVuY2UubWF0Y2hUZXJtKHRlcm0pO1xuXG4gICAgaWYgKGVxdWl2YWxlbmNlTWF0Y2hlc1Rlcm0pIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICByZXR1cm4gZXF1aXZhbGVuY2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBncm91bmRlZFRlcm1zQW5kRGVmaW5lZFZhcmlhYmxlc0Zyb21Gcm9tRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlcywgZ3JvdW5kZWRUZXJtcywgZGVmaW5lZFZhcmlhYmxlcywgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBncm91bmRlZEVxdWl2YWxlbmNlcyxcbiAgICAgIHJlbWFpbmluZ0VxdWl2YWxlbmNlcyxcbiAgICAgIGluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzLFxuICAgICAgaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzO1xuXG4gIHJlbWFpbmluZ0VxdWl2YWxlbmNlcyA9IFtdO1xuXG4gIGluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzID0gW107XG5cbiAgc2VwYXJhdGVJbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcyhlcXVpdmFsZW5jZXMsIHJlbWFpbmluZ0VxdWl2YWxlbmNlcywgaW5pdGlhbGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgY29uc3QgaW5pdGlhbGx5R3JvdW5kZWRFcXVpdmFsZW5jZXNMZW5ndGggPSBpbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcy5sZW5ndGg7XG5cbiAgaWYgKGluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzTGVuZ3RoID4gMCkge1xuICAgIGdyb3VuZGVkRXF1aXZhbGVuY2VzID0gaW5pdGlhbGx5R3JvdW5kZWRFcXVpdmFsZW5jZXM7IC8vL1xuXG4gICAgbGV0IGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlc0xlbmd0aCA9IDE7XG5cbiAgICB3aGlsZSAoaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzTGVuZ3RoID4gMCkge1xuICAgICAgbGV0IGRlZmluZWRWYXJpYWJsZXNMZW5ndGggPSAwLFxuICAgICAgICAgIHByZXZpb3VzRGVmaW5lZFZhcmlhYmxlc0xlbmd0aCA9IC0xO1xuXG4gICAgICB3aGlsZSAoZGVmaW5lZFZhcmlhYmxlc0xlbmd0aCA+IHByZXZpb3VzRGVmaW5lZFZhcmlhYmxlc0xlbmd0aCkge1xuICAgICAgICBwcmV2aW91c0RlZmluZWRWYXJpYWJsZXNMZW5ndGggPSBkZWZpbmVkVmFyaWFibGVzTGVuZ3RoOyAgLy8vXG5cbiAgICAgICAgZ3JvdW5kZWRUZXJtc0Zyb21Hcm91bmRlZEVxdWl2YWxlbmNlc0FuZERlZmluZWRWYXJpYWJsZXMoZ3JvdW5kZWRFcXVpdmFsZW5jZXMsIGRlZmluZWRWYXJpYWJsZXMsIGdyb3VuZGVkVGVybXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgZGVmaW5lZFZhcmlhYmxlc0Zyb21Hcm91bmRlZFRlcm1zKGdyb3VuZGVkVGVybXMsIGRlZmluZWRWYXJpYWJsZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgZGVmaW5lZFZhcmlhYmxlc0xlbmd0aCA9IGRlZmluZWRWYXJpYWJsZXMubGVuZ3RoO1xuICAgICAgfVxuXG4gICAgICBlcXVpdmFsZW5jZXMgPSByZW1haW5pbmdFcXVpdmFsZW5jZXM7IC8vL1xuXG4gICAgICByZW1haW5pbmdFcXVpdmFsZW5jZXMgPSBbXTtcblxuICAgICAgaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzID0gW107XG5cbiAgICAgIHNlcGFyYXRlSW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlcywgcmVtYWluaW5nRXF1aXZhbGVuY2VzLCBpbXBsaWNpdGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMsIGRlZmluZWRWYXJpYWJsZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIHB1c2goZ3JvdW5kZWRFcXVpdmFsZW5jZXMsIGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlcyk7XG5cbiAgICAgIGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlc0xlbmd0aCA9IGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlcy5sZW5ndGg7ICAvLy9cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gdHlwZXNGcm9tRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlcywgbG9jYWxDb250ZXh0KSB7XG4gIGNvbnN0IHR5cGVzID0gZXF1aXZhbGVuY2VzLm1hcCgoZXF1aXZhbGVuY2UpID0+IHtcbiAgICBjb25zdCB0eXBlID0gZXF1aXZhbGVuY2UuZ2V0VHlwZShsb2NhbENvbnRleHQpO1xuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH0pO1xuXG4gIHJldHVybiB0eXBlcztcbn1cblxuZnVuY3Rpb24gZmluZEVxdWl2YWxlbmNlQnlUZXJtTm9kZXMoZXF1aXZhbGVuY2VzLCB0ZXJtTm9kZXMpIHtcbiAgY29uc3QgZXF1aXZhbGVuY2UgPSBlcXVpdmFsZW5jZXMuZmluZCgoZXF1aXZhbGVuY2UpID0+IHtcbiAgICBjb25zdCBlcXVpdmFsZW5jZU1hdGNoZXNUZXJtcyA9IGVxdWl2YWxlbmNlLm1hdGNoVGVybU5vZGVzKHRlcm1Ob2Rlcyk7XG5cbiAgICBpZiAoZXF1aXZhbGVuY2VNYXRjaGVzVGVybXMpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICByZXR1cm4gZXF1aXZhbGVuY2U7XG59XG5cbmZ1bmN0aW9uIGRlZmluZWRWYXJpYWJsZXNGcm9tR3JvdW5kZWRUZXJtcyhncm91bmRlZFRlcm1zLCBkZWZpbmVkVmFyaWFibGVzLCBsb2NhbENvbnRleHQpIHtcbiAgY29uc3QgdGVybXMgPSBncm91bmRlZFRlcm1zLCAgLy8vXG4gICAgICAgIHZhcmlhYmxlcyA9IGRlZmluZWRWYXJpYWJsZXM7IC8vL1xuXG4gIHRlcm1zLmZvckVhY2goKHRlcm0pID0+IHtcbiAgICBjb25zdCB0ZXJtVmFyaWFibGVzID0gdGVybS5nZXRWYXJpYWJsZXMobG9jYWxDb250ZXh0KTtcblxuICAgIHRlcm1WYXJpYWJsZXMuZm9yRWFjaCgodGVybVZhcmlhYmxlKSA9PiB7XG4gICAgICBjb25zdCB2YXJpYWJsZXNJbmNsdWRlc1Rlcm1WYXJpYWJsZSA9IHZhcmlhYmxlcy5pbmNsdWRlcyh0ZXJtVmFyaWFibGUpO1xuXG4gICAgICBpZiAoIXZhcmlhYmxlc0luY2x1ZGVzVGVybVZhcmlhYmxlKSB7XG4gICAgICAgIGNvbnN0IHZhcmlhYmxlID0gdGVybVZhcmlhYmxlOyAgLy8vXG5cbiAgICAgICAgdmFyaWFibGVzLnB1c2godmFyaWFibGUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gc2VwYXJhdGVJbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcyhlcXVpdmFsZW5jZXMsIHJlbWFpbmluZ0VxdWl2YWxlbmNlcywgaW5pdGlhbGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMsIGxvY2FsQ29udGV4dCkge1xuICBzZXBhcmF0ZShlcXVpdmFsZW5jZXMsIHJlbWFpbmluZ0VxdWl2YWxlbmNlcywgaW5pdGlhbGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMsIChlcXVpdmFsZW5jZSkgPT4ge1xuICAgIGNvbnN0IGVxdWl2YWxlbmNlSW5pdGlhbGx5R3JvdW5kZWQgPSBlcXVpdmFsZW5jZS5pc0luaXRpYWxseUdyb3VuZGVkKGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoIWVxdWl2YWxlbmNlSW5pdGlhbGx5R3JvdW5kZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHNlcGFyYXRlSW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlcywgcmVtYWluaW5nRXF1aXZhbGVuY2VzLCBpbXBsaWNpdGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMsIGRlZmluZWRWYXJpYWJsZXMsIGxvY2FsQ29udGV4dCkge1xuICBzZXBhcmF0ZShlcXVpdmFsZW5jZXMsIHJlbWFpbmluZ0VxdWl2YWxlbmNlcywgaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzLCAoZXF1aXZhbGVuY2UpID0+IHtcbiAgICBjb25zdCBlcXVpdmFsZW5jZUltcGxpY2l0bHlHcm91bmRlZCA9IGVxdWl2YWxlbmNlLmlzSW1wbGljaXRseUdyb3VuZGVkKGRlZmluZWRWYXJpYWJsZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoIWVxdWl2YWxlbmNlSW1wbGljaXRseUdyb3VuZGVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBncm91bmRlZFRlcm1zRnJvbUdyb3VuZGVkRXF1aXZhbGVuY2VzQW5kRGVmaW5lZFZhcmlhYmxlcyhncm91bmRlZEVxdWl2YWxlbmNlcywgZGVmaW5lZFZhcmlhYmxlcywgZ3JvdW5kZWRUZXJtcywgbG9jYWxDb250ZXh0KSB7XG4gIGdyb3VuZGVkRXF1aXZhbGVuY2VzLmZvckVhY2goKGdyb3VuZGVkRXF1aXZhbGVuY2UpID0+IHtcbiAgICBncm91bmRlZEVxdWl2YWxlbmNlLmdldEdyb3VuZGVkVGVybXMoZGVmaW5lZFZhcmlhYmxlcywgZ3JvdW5kZWRUZXJtcywgbG9jYWxDb250ZXh0KTtcbiAgfSk7XG59XG4iXSwibmFtZXMiOlsiYXJlVGVybU5vZGVzRXF1YWwiLCJmaW5kRXF1aXZhbGVuY2VCeVRlcm0iLCJmaW5kRXF1aXZhbGVuY2VCeVR5cGUiLCJncm91bmRlZFRlcm1zQW5kRGVmaW5lZFZhcmlhYmxlc0Zyb21Gcm9tRXF1aXZhbGVuY2VzIiwibWVyZ2VFcXVpdmFsZW5jZXMiLCJlcXVpdmFsZW5jZXNBIiwiZXF1aXZhbGVuY2VzQiIsImxvY2FsQ29udGV4dCIsInR5cGVzQSIsInR5cGVzRnJvbUVxdWl2YWxlbmNlcyIsInR5cGVzQiIsInR5cGVzIiwiY29tcHJlc3MiLCJ0eXBlQSIsInR5cGVCIiwiZXF1aXZhbGVuY2VzIiwibWFwIiwidHlwZSIsImVxdWl2YWxlbmNlIiwiZXF1aXZhbGVuY2VBIiwiZXF1aXZhbGVuY2VCIiwibGVmdEVxdWl2YWxlbmNlIiwicmlnaHRFcXVpdmFsZW5jZSIsIkVxdWl2YWxlbmNlIiwibWVyZ2UiLCJsZWZ0VGVybU5vZGUiLCJyaWdodFRlcm1Ob2RlIiwidGVybU5vZGVzRXF1YWwiLCJsZWZ0VGVybU5vZGVNYXRjaGVzUmlnaHRUZXJtTm9kZSIsIm1hdGNoIiwidGVybU5vZGVzIiwiZmluZEVxdWl2YWxlbmNlQnlUZXJtTm9kZXMiLCJmaW5kIiwiZXF1aXZhbGVuY2VNYXRjaGVzVHlwZSIsIm1hdGNoVHlwZSIsInRlcm0iLCJlcXVpdmFsZW5jZU1hdGNoZXNUZXJtIiwibWF0Y2hUZXJtIiwiZ3JvdW5kZWRUZXJtcyIsImRlZmluZWRWYXJpYWJsZXMiLCJncm91bmRlZEVxdWl2YWxlbmNlcyIsInJlbWFpbmluZ0VxdWl2YWxlbmNlcyIsImluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzIiwiaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzIiwic2VwYXJhdGVJbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcyIsImluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzTGVuZ3RoIiwibGVuZ3RoIiwiaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzTGVuZ3RoIiwiZGVmaW5lZFZhcmlhYmxlc0xlbmd0aCIsInByZXZpb3VzRGVmaW5lZFZhcmlhYmxlc0xlbmd0aCIsImdyb3VuZGVkVGVybXNGcm9tR3JvdW5kZWRFcXVpdmFsZW5jZXNBbmREZWZpbmVkVmFyaWFibGVzIiwiZGVmaW5lZFZhcmlhYmxlc0Zyb21Hcm91bmRlZFRlcm1zIiwic2VwYXJhdGVJbXBsaWNpdGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMiLCJwdXNoIiwiZ2V0VHlwZSIsImVxdWl2YWxlbmNlTWF0Y2hlc1Rlcm1zIiwibWF0Y2hUZXJtTm9kZXMiLCJ0ZXJtcyIsInZhcmlhYmxlcyIsImZvckVhY2giLCJ0ZXJtVmFyaWFibGVzIiwiZ2V0VmFyaWFibGVzIiwidGVybVZhcmlhYmxlIiwidmFyaWFibGVzSW5jbHVkZXNUZXJtVmFyaWFibGUiLCJpbmNsdWRlcyIsInZhcmlhYmxlIiwic2VwYXJhdGUiLCJlcXVpdmFsZW5jZUluaXRpYWxseUdyb3VuZGVkIiwiaXNJbml0aWFsbHlHcm91bmRlZCIsImVxdWl2YWxlbmNlSW1wbGljaXRseUdyb3VuZGVkIiwiaXNJbXBsaWNpdGx5R3JvdW5kZWQiLCJncm91bmRlZEVxdWl2YWxlbmNlIiwiZ2V0R3JvdW5kZWRUZXJtcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBeUNnQkEsaUJBQWlCO2VBQWpCQTs7SUFnQ0FDLHFCQUFxQjtlQUFyQkE7O0lBWkFDLHFCQUFxQjtlQUFyQkE7O0lBd0JBQyxvREFBb0Q7ZUFBcERBOztJQWpGQUMsaUJBQWlCO2VBQWpCQTs7O3FCQUZ5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFbEMsU0FBU0Esa0JBQWtCQyxhQUFhLEVBQUVDLGFBQWEsRUFBRUMsWUFBWTtJQUMxRSxJ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
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZXF1aXZhbGVuY2VzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgRXF1aXZhbGVuY2UgZnJvbSBcIi4uL2VxdWl2YWxlbmNlXCI7XG5cbmltcG9ydCB7IHB1c2gsIGNvbXByZXNzLCBzZXBhcmF0ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlc0EsIGVxdWl2YWxlbmNlc0IsIGxvY2FsQ29udGV4dCkge1xuICBjb25zdCB0eXBlc0EgPSB0eXBlc0Zyb21FcXVpdmFsZW5jZXMoZXF1aXZhbGVuY2VzQSwgbG9jYWxDb250ZXh0KSxcbiAgICAgICAgdHlwZXNCID0gdHlwZXNGcm9tRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlc0IsIGxvY2FsQ29udGV4dCksXG4gICAgICAgIHR5cGVzID0gW1xuICAgICAgICAgIC4uLnR5cGVzQSxcbiAgICAgICAgICAuLi50eXBlc0JcbiAgICAgICAgXTtcblxuICBjb21wcmVzcyh0eXBlcywgKHR5cGVBLCB0eXBlQikgPT4ge1xuICAgIGlmICh0eXBlQSA9PT0gdHlwZUIpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgY29uc3QgZXF1aXZhbGVuY2VzID0gdHlwZXMubWFwKCh0eXBlKSA9PiB7XG4gICAgbGV0IGVxdWl2YWxlbmNlO1xuXG4gICAgY29uc3QgZXF1aXZhbGVuY2VBID0gZmluZEVxdWl2YWxlbmNlQnlUeXBlKGVxdWl2YWxlbmNlc0EsIHR5cGUsIGxvY2FsQ29udGV4dCksXG4gICAgICAgICAgZXF1aXZhbGVuY2VCID0gZmluZEVxdWl2YWxlbmNlQnlUeXBlKGVxdWl2YWxlbmNlc0IsIHR5cGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoKGVxdWl2YWxlbmNlQSAhPT0gbnVsbCkgJiYgKGVxdWl2YWxlbmNlQiAhPT0gbnVsbCkpIHtcbiAgICAgIGNvbnN0IGxlZnRFcXVpdmFsZW5jZSA9IGVxdWl2YWxlbmNlQSwgLy8vXG4gICAgICAgICAgICByaWdodEVxdWl2YWxlbmNlID0gZXF1aXZhbGVuY2VCOyAgLy8vXG5cbiAgICAgIGVxdWl2YWxlbmNlID0gRXF1aXZhbGVuY2UubWVyZ2UobGVmdEVxdWl2YWxlbmNlLCByaWdodEVxdWl2YWxlbmNlKTtcbiAgICB9IGVsc2UgaWYgKGVxdWl2YWxlbmNlQSAhPT0gbnVsbCkge1xuICAgICAgZXF1aXZhbGVuY2UgPSBlcXVpdmFsZW5jZUE7IC8vL1xuICAgIH0gZWxzZSBpZiAoZXF1aXZhbGVuY2VCICE9PSBudWxsKSB7XG4gICAgICBlcXVpdmFsZW5jZSA9IGVxdWl2YWxlbmNlQjsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIGVxdWl2YWxlbmNlO1xuICB9KTtcblxuICByZXR1cm4gZXF1aXZhbGVuY2VzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmluZEVxdWl2YWxlbmNlQnlUeXBlKGVxdWl2YWxlbmNlcywgdHlwZSwgbG9jYWxDb250ZXh0KSB7XG4gIGNvbnN0IGVxdWl2YWxlbmNlID0gZXF1aXZhbGVuY2VzLmZpbmQoKGVxdWl2YWxlbmNlKSA9PiB7XG4gICAgY29uc3QgZXF1aXZhbGVuY2VNYXRjaGVzVHlwZSA9IGVxdWl2YWxlbmNlLm1hdGNoVHlwZSh0eXBlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKGVxdWl2YWxlbmNlTWF0Y2hlc1R5cGUpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICByZXR1cm4gZXF1aXZhbGVuY2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kRXF1aXZhbGVuY2VCeVRlcm0oZXF1aXZhbGVuY2VzLCB0ZXJtKSB7XG4gIGNvbnN0IGVxdWl2YWxlbmNlID0gZXF1aXZhbGVuY2VzLmZpbmQoKGVxdWl2YWxlbmNlKSA9PiB7XG4gICAgY29uc3QgZXF1aXZhbGVuY2VNYXRjaGVzVGVybSA9IGVxdWl2YWxlbmNlLm1hdGNoVGVybSh0ZXJtKTtcblxuICAgIGlmIChlcXVpdmFsZW5jZU1hdGNoZXNUZXJtKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pIHx8IG51bGw7XG5cbiAgcmV0dXJuIGVxdWl2YWxlbmNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmluZEVxdWl2YWxlbmNlQnlUZXJtTm9kZXMoZXF1aXZhbGVuY2VzLCB0ZXJtTm9kZXMpIHtcbiAgY29uc3QgZXF1aXZhbGVuY2UgPSBlcXVpdmFsZW5jZXMuZmluZCgoZXF1aXZhbGVuY2UpID0+IHtcbiAgICBjb25zdCBlcXVpdmFsZW5jZU1hdGNoZXNUZXJtcyA9IGVxdWl2YWxlbmNlLm1hdGNoVGVybU5vZGVzKHRlcm1Ob2Rlcyk7XG5cbiAgICBpZiAoZXF1aXZhbGVuY2VNYXRjaGVzVGVybXMpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICByZXR1cm4gZXF1aXZhbGVuY2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBncm91bmRlZFRlcm1zQW5kRGVmaW5lZFZhcmlhYmxlc0Zyb21Gcm9tRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlcywgZ3JvdW5kZWRUZXJtcywgZGVmaW5lZFZhcmlhYmxlcywgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBncm91bmRlZEVxdWl2YWxlbmNlcyxcbiAgICAgIHJlbWFpbmluZ0VxdWl2YWxlbmNlcyxcbiAgICAgIGluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzLFxuICAgICAgaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzO1xuXG4gIHJlbWFpbmluZ0VxdWl2YWxlbmNlcyA9IFtdO1xuXG4gIGluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzID0gW107XG5cbiAgc2VwYXJhdGVJbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcyhlcXVpdmFsZW5jZXMsIHJlbWFpbmluZ0VxdWl2YWxlbmNlcywgaW5pdGlhbGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgY29uc3QgaW5pdGlhbGx5R3JvdW5kZWRFcXVpdmFsZW5jZXNMZW5ndGggPSBpbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcy5sZW5ndGg7XG5cbiAgaWYgKGluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzTGVuZ3RoID4gMCkge1xuICAgIGdyb3VuZGVkRXF1aXZhbGVuY2VzID0gaW5pdGlhbGx5R3JvdW5kZWRFcXVpdmFsZW5jZXM7IC8vL1xuXG4gICAgbGV0IGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlc0xlbmd0aCA9IDE7XG5cbiAgICB3aGlsZSAoaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzTGVuZ3RoID4gMCkge1xuICAgICAgbGV0IGRlZmluZWRWYXJpYWJsZXNMZW5ndGggPSAwLFxuICAgICAgICAgIHByZXZpb3VzRGVmaW5lZFZhcmlhYmxlc0xlbmd0aCA9IC0xO1xuXG4gICAgICB3aGlsZSAoZGVmaW5lZFZhcmlhYmxlc0xlbmd0aCA+IHByZXZpb3VzRGVmaW5lZFZhcmlhYmxlc0xlbmd0aCkge1xuICAgICAgICBwcmV2aW91c0RlZmluZWRWYXJpYWJsZXNMZW5ndGggPSBkZWZpbmVkVmFyaWFibGVzTGVuZ3RoOyAgLy8vXG5cbiAgICAgICAgZ3JvdW5kZWRUZXJtc0Zyb21Hcm91bmRlZEVxdWl2YWxlbmNlc0FuZERlZmluZWRWYXJpYWJsZXMoZ3JvdW5kZWRFcXVpdmFsZW5jZXMsIGRlZmluZWRWYXJpYWJsZXMsIGdyb3VuZGVkVGVybXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgZGVmaW5lZFZhcmlhYmxlc0Zyb21Hcm91bmRlZFRlcm1zKGdyb3VuZGVkVGVybXMsIGRlZmluZWRWYXJpYWJsZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgZGVmaW5lZFZhcmlhYmxlc0xlbmd0aCA9IGRlZmluZWRWYXJpYWJsZXMubGVuZ3RoO1xuICAgICAgfVxuXG4gICAgICBlcXVpdmFsZW5jZXMgPSByZW1haW5pbmdFcXVpdmFsZW5jZXM7IC8vL1xuXG4gICAgICByZW1haW5pbmdFcXVpdmFsZW5jZXMgPSBbXTtcblxuICAgICAgaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzID0gW107XG5cbiAgICAgIHNlcGFyYXRlSW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlcywgcmVtYWluaW5nRXF1aXZhbGVuY2VzLCBpbXBsaWNpdGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMsIGRlZmluZWRWYXJpYWJsZXMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIHB1c2goZ3JvdW5kZWRFcXVpdmFsZW5jZXMsIGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlcyk7XG5cbiAgICAgIGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlc0xlbmd0aCA9IGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlcy5sZW5ndGg7ICAvLy9cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gdHlwZXNGcm9tRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlcywgbG9jYWxDb250ZXh0KSB7XG4gIGNvbnN0IHR5cGVzID0gZXF1aXZhbGVuY2VzLm1hcCgoZXF1aXZhbGVuY2UpID0+IHtcbiAgICBjb25zdCB0eXBlID0gZXF1aXZhbGVuY2UuZ2V0VHlwZShsb2NhbENvbnRleHQpO1xuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH0pO1xuXG4gIHJldHVybiB0eXBlcztcbn1cblxuZnVuY3Rpb24gZGVmaW5lZFZhcmlhYmxlc0Zyb21Hcm91bmRlZFRlcm1zKGdyb3VuZGVkVGVybXMsIGRlZmluZWRWYXJpYWJsZXMsIGxvY2FsQ29udGV4dCkge1xuICBjb25zdCB0ZXJtcyA9IGdyb3VuZGVkVGVybXMsICAvLy9cbiAgICAgICAgdmFyaWFibGVzID0gZGVmaW5lZFZhcmlhYmxlczsgLy8vXG5cbiAgdGVybXMuZm9yRWFjaCgodGVybSkgPT4ge1xuICAgIGNvbnN0IHRlcm1WYXJpYWJsZXMgPSB0ZXJtLmdldFZhcmlhYmxlcyhsb2NhbENvbnRleHQpO1xuXG4gICAgdGVybVZhcmlhYmxlcy5mb3JFYWNoKCh0ZXJtVmFyaWFibGUpID0+IHtcbiAgICAgIGNvbnN0IHZhcmlhYmxlc0luY2x1ZGVzVGVybVZhcmlhYmxlID0gdmFyaWFibGVzLmluY2x1ZGVzKHRlcm1WYXJpYWJsZSk7XG5cbiAgICAgIGlmICghdmFyaWFibGVzSW5jbHVkZXNUZXJtVmFyaWFibGUpIHtcbiAgICAgICAgY29uc3QgdmFyaWFibGUgPSB0ZXJtVmFyaWFibGU7ICAvLy9cblxuICAgICAgICB2YXJpYWJsZXMucHVzaCh2YXJpYWJsZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBzZXBhcmF0ZUluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzKGVxdWl2YWxlbmNlcywgcmVtYWluaW5nRXF1aXZhbGVuY2VzLCBpbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcywgbG9jYWxDb250ZXh0KSB7XG4gIHNlcGFyYXRlKGVxdWl2YWxlbmNlcywgcmVtYWluaW5nRXF1aXZhbGVuY2VzLCBpbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcywgKGVxdWl2YWxlbmNlKSA9PiB7XG4gICAgY29uc3QgZXF1aXZhbGVuY2VJbml0aWFsbHlHcm91bmRlZCA9IGVxdWl2YWxlbmNlLmlzSW5pdGlhbGx5R3JvdW5kZWQobG9jYWxDb250ZXh0KTtcblxuICAgIGlmICghZXF1aXZhbGVuY2VJbml0aWFsbHlHcm91bmRlZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcbn1cblxuZnVuY3Rpb24gc2VwYXJhdGVJbXBsaWNpdGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMoZXF1aXZhbGVuY2VzLCByZW1haW5pbmdFcXVpdmFsZW5jZXMsIGltcGxpY2l0bHlHcm91bmRlZEVxdWl2YWxlbmNlcywgZGVmaW5lZFZhcmlhYmxlcywgbG9jYWxDb250ZXh0KSB7XG4gIHNlcGFyYXRlKGVxdWl2YWxlbmNlcywgcmVtYWluaW5nRXF1aXZhbGVuY2VzLCBpbXBsaWNpdGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMsIChlcXVpdmFsZW5jZSkgPT4ge1xuICAgIGNvbnN0IGVxdWl2YWxlbmNlSW1wbGljaXRseUdyb3VuZGVkID0gZXF1aXZhbGVuY2UuaXNJbXBsaWNpdGx5R3JvdW5kZWQoZGVmaW5lZFZhcmlhYmxlcywgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmICghZXF1aXZhbGVuY2VJbXBsaWNpdGx5R3JvdW5kZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdyb3VuZGVkVGVybXNGcm9tR3JvdW5kZWRFcXVpdmFsZW5jZXNBbmREZWZpbmVkVmFyaWFibGVzKGdyb3VuZGVkRXF1aXZhbGVuY2VzLCBkZWZpbmVkVmFyaWFibGVzLCBncm91bmRlZFRlcm1zLCBsb2NhbENvbnRleHQpIHtcbiAgZ3JvdW5kZWRFcXVpdmFsZW5jZXMuZm9yRWFjaCgoZ3JvdW5kZWRFcXVpdmFsZW5jZSkgPT4ge1xuICAgIGdyb3VuZGVkRXF1aXZhbGVuY2UuZ2V0R3JvdW5kZWRUZXJtcyhkZWZpbmVkVmFyaWFibGVzLCBncm91bmRlZFRlcm1zLCBsb2NhbENvbnRleHQpO1xuICB9KTtcbn1cbiJdLCJuYW1lcyI6WyJmaW5kRXF1aXZhbGVuY2VCeVRlcm0iLCJmaW5kRXF1aXZhbGVuY2VCeVRlcm1Ob2RlcyIsImZpbmRFcXVpdmFsZW5jZUJ5VHlwZSIsImdyb3VuZGVkVGVybXNBbmREZWZpbmVkVmFyaWFibGVzRnJvbUZyb21FcXVpdmFsZW5jZXMiLCJtZXJnZUVxdWl2YWxlbmNlcyIsImVxdWl2YWxlbmNlc0EiLCJlcXVpdmFsZW5jZXNCIiwibG9jYWxDb250ZXh0IiwidHlwZXNBIiwidHlwZXNGcm9tRXF1aXZhbGVuY2VzIiwidHlwZXNCIiwidHlwZXMiLCJjb21wcmVzcyIsInR5cGVBIiwidHlwZUIiLCJlcXVpdmFsZW5jZXMiLCJtYXAiLCJ0eXBlIiwiZXF1aXZhbGVuY2UiLCJlcXVpdmFsZW5jZUEiLCJlcXVpdmFsZW5jZUIiLCJsZWZ0RXF1aXZhbGVuY2UiLCJyaWdodEVxdWl2YWxlbmNlIiwiRXF1aXZhbGVuY2UiLCJtZXJnZSIsImZpbmQiLCJlcXVpdmFsZW5jZU1hdGNoZXNUeXBlIiwibWF0Y2hUeXBlIiwidGVybSIsImVxdWl2YWxlbmNlTWF0Y2hlc1Rlcm0iLCJtYXRjaFRlcm0iLCJ0ZXJtTm9kZXMiLCJlcXVpdmFsZW5jZU1hdGNoZXNUZXJtcyIsIm1hdGNoVGVybU5vZGVzIiwiZ3JvdW5kZWRUZXJtcyIsImRlZmluZWRWYXJpYWJsZXMiLCJncm91bmRlZEVxdWl2YWxlbmNlcyIsInJlbWFpbmluZ0VxdWl2YWxlbmNlcyIsImluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzIiwiaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzIiwic2VwYXJhdGVJbml0aWFsbHlHcm91bmRlZEVxdWl2YWxlbmNlcyIsImluaXRpYWxseUdyb3VuZGVkRXF1aXZhbGVuY2VzTGVuZ3RoIiwibGVuZ3RoIiwiaW1wbGljaXRseUdyb3VuZGVkRXF1aXZhbGVuY2VzTGVuZ3RoIiwiZGVmaW5lZFZhcmlhYmxlc0xlbmd0aCIsInByZXZpb3VzRGVmaW5lZFZhcmlhYmxlc0xlbmd0aCIsImdyb3VuZGVkVGVybXNGcm9tR3JvdW5kZWRFcXVpdmFsZW5jZXNBbmREZWZpbmVkVmFyaWFibGVzIiwiZGVmaW5lZFZhcmlhYmxlc0Zyb21Hcm91bmRlZFRlcm1zIiwic2VwYXJhdGVJbXBsaWNpdGx5R3JvdW5kZWRFcXVpdmFsZW5jZXMiLCJwdXNoIiwiZ2V0VHlwZSIsInRlcm1zIiwidmFyaWFibGVzIiwiZm9yRWFjaCIsInRlcm1WYXJpYWJsZXMiLCJnZXRWYXJpYWJsZXMiLCJ0ZXJtVmFyaWFibGUiLCJ2YXJpYWJsZXNJbmNsdWRlc1Rlcm1WYXJpYWJsZSIsImluY2x1ZGVzIiwidmFyaWFibGUiLCJzZXBhcmF0ZSIsImVxdWl2YWxlbmNlSW5pdGlhbGx5R3JvdW5kZWQiLCJpc0luaXRpYWxseUdyb3VuZGVkIiwiZXF1aXZhbGVuY2VJbXBsaWNpdGx5R3JvdW5kZWQiLCJpc0ltcGxpY2l0bHlHcm91bmRlZCIsImdyb3VuZGVkRXF1aXZhbGVuY2UiLCJnZXRHcm91bmRlZFRlcm1zIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUF1RGdCQSxxQkFBcUI7ZUFBckJBOztJQVlBQywwQkFBMEI7ZUFBMUJBOztJQXhCQUMscUJBQXFCO2VBQXJCQTs7SUFvQ0FDLG9EQUFvRDtlQUFwREE7O0lBekVBQyxpQkFBaUI7ZUFBakJBOzs7a0VBSlE7cUJBRWlCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWxDLFNBQVNBLGtCQUFrQkMsYUFBYSxFQUFFQyxhQUFhLEVBQUVDLFlBQVk7SUFDMUUsSUFBTUMsU0FBU0Msc0JBQXNCSixlQUFlRSxlQUM5Q0csU0FBU0Qsc0JBQXNCSCxlQUFlQyxlQUM5Q0ksUUFBUSxBQUNOLHFCQUFHSCxlQUNILHFCQUFHRTtJQUdYRSxJQUFBQSxlQUFRLEVBQUNELE9BQU8sU0FBQ0UsT0FBT0M7UUFDdEIsSUFBSUQsVUFBVUMsT0FBTztZQUNuQixPQUFPO1FBQ1Q7SUFDRjtJQUVBLElBQU1DLGVBQWVKLE1BQU1LLEdBQUcsQ0FBQyxTQUFDQztRQUM5QixJQUFJQztRQUVKLElBQU1DLGVBQWVqQixzQkFBc0JHLGVBQWVZLE1BQU1WLGVBQzFEYSxlQUFlbEIsc0JBQXNCSSxlQUFlVyxNQUFNVjtRQUVoRSxJQUFJLEFBQUNZLGlCQUFpQixRQUFVQyxpQkFBaUIsTUFBTztZQUN0RCxJQUFNQyxrQkFBa0JGLGNBQ2xCRyxtQkFBbUJGLGNBQWUsR0FBRztZQUUzQ0YsY0FBY0ssb0JBQVcsQ0FBQ0MsS0FBSyxDQUFDSCxpQkFBaUJDO1FBQ25ELE9BQU8sSUFBSUgsaUJBQWlCLE1BQU07WUFDaENELGNBQWNDLGNBQWMsR0FBRztRQUNqQyxPQUFPLElBQUlDLGlCQUFpQixNQUFNO1lBQ2hDRixjQUFjRSxjQUFjLEdBQUc7UUFDakM7UUFFQSxPQUFPRjtJQUNUO0lBRUEsT0FBT0g7QUFDVDtBQUVP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
|
package/lib/variable.js
CHANGED
|
@@ -85,14 +85,6 @@ var Variable = /*#__PURE__*/ function() {
|
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
], [
|
|
88
|
-
{
|
|
89
|
-
key: "fromVariableAndType",
|
|
90
|
-
value: function fromVariableAndType(variable, type) {
|
|
91
|
-
var node = variable.getNode();
|
|
92
|
-
variable = new Variable(node, type); ///
|
|
93
|
-
return variable;
|
|
94
|
-
}
|
|
95
|
-
},
|
|
96
88
|
{
|
|
97
89
|
key: "fromVariableNodeAndType",
|
|
98
90
|
value: function fromVariableNodeAndType(variableNode, type) {
|
|
@@ -104,4 +96,4 @@ var Variable = /*#__PURE__*/ function() {
|
|
|
104
96
|
return Variable;
|
|
105
97
|
}();
|
|
106
98
|
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92YXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWYXJpYWJsZSB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIHR5cGUpIHtcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gIH1cblxuICBnZXROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGU7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBtYXRjaCh2YXJpYWJsZSkge1xuICAgIGNvbnN0IHR5cGUgPSB2YXJpYWJsZS5nZXRUeXBlKCksXG4gICAgICAgICAgbm9kZSA9IHZhcmlhYmxlLmdldE5vZGUoKSxcbiAgICAgICAgICBtYXRjaGVzVHlwZSA9IHRoaXMubWF0Y2hUeXBlKHR5cGUpLFxuICAgICAgICAgIG1hdGNoZXNOb2RlID0gdGhpcy5tYXRjaE5vZGUobm9kZSksXG4gICAgICAgICAgbWF0Y2hlcyA9IG1hdGNoZXNOb2RlICYmIG1hdGNoZXNUeXBlO1xuXG4gICAgcmV0dXJuIG1hdGNoZXM7XG4gIH1cblxuICBtYXRjaE5vZGUobm9kZSkge1xuICAgIGNvbnN0IG1hdGNoZXNOb2RlID0gdGhpcy5ub2RlLm1hdGNoKG5vZGUpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNOb2RlO1xuICB9XG5cbiAgbWF0Y2hUeXBlKHR5cGUpIHtcbiAgICBjb25zdCBtYXRjaGVzVHlwZSA9IHRoaXMudHlwZS5tYXRjaCh0eXBlKTtcblxuICAgIHJldHVybiBtYXRjaGVzVHlwZTtcbiAgfVxuXG4gIG1hdGNoTm9kZUFuZFR5cGUobm9kZSwgdHlwZSkge1xuICAgIGNvbnN0IG1hdGNoZXNOb2RlID0gdGhpcy5tYXRjaE5vZGUobm9kZSksXG4gICAgICAgICAgbWF0Y2hlc1R5cGUgPSB0aGlzLm1hdGNoVHlwZSh0eXBlKSxcbiAgICAgICAgICBtYXRjaGVzTm9kZUFuZFR5cGUgPSBtYXRjaGVzTm9kZSAmJiBtYXRjaGVzVHlwZTtcblxuICAgIHJldHVybiBtYXRjaGVzTm9kZUFuZFR5cGU7XG4gIH1cblxuICBhc1N0cmluZyh0b2tlbnMpIHtcbiAgICBjb25zdCB0eXBlTmFtZSA9IHRoaXMudHlwZS5nZXROYW1lKCk7XG5cbiAgICBsZXQgc3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMubm9kZSwgdG9rZW5zKTtcblxuICAgIHN0cmluZyA9IGAke3N0cmluZ306JHt0eXBlTmFtZX1gOyAvLy9cblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlTm9kZUFuZFR5cGUodmFyaWFibGVOb2RlLCB0eXBlKSB7XG4gICAgY29uc3Qgbm9kZSA9IHZhcmlhYmxlTm9kZSwgIC8vL1xuICAgICAgICAgIHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKG5vZGUsIHR5cGUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG59XG4iXSwibmFtZXMiOlsiVmFyaWFibGUiLCJub2RlIiwidHlwZSIsImdldE5vZGUiLCJnZXRUeXBlIiwibWF0Y2giLCJ2YXJpYWJsZSIsIm1hdGNoZXNUeXBlIiwibWF0Y2hUeXBlIiwibWF0Y2hlc05vZGUiLCJtYXRjaE5vZGUiLCJtYXRjaGVzIiwibWF0Y2hOb2RlQW5kVHlwZSIsIm1hdGNoZXNOb2RlQW5kVHlwZSIsImFzU3RyaW5nIiwidG9rZW5zIiwidHlwZU5hbWUiLCJnZXROYW1lIiwic3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiZnJvbVZhcmlhYmxlTm9kZUFuZFR5cGUiLCJ2YXJpYWJsZU5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O3NCQUZROzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVkLElBQUEsQUFBTUEseUJBQU47YUFBTUEsU0FDUEMsSUFBSSxFQUFFQyxJQUFJO2dDQURIRjtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLElBQUksR0FBR0E7O2tCQUhLRjs7WUFNbkJHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxNQUFNQyxRQUFRO2dCQUNaLElBQU1KLE9BQU9JLFNBQVNGLE9BQU8sSUFDdkJILE9BQU9LLFNBQVNILE9BQU8sSUFDdkJJLGNBQWMsSUFBSSxDQUFDQyxTQUFTLENBQUNOLE9BQzdCTyxjQUFjLElBQUksQ0FBQ0MsU0FBUyxDQUFDVCxPQUM3QlUsVUFBVUYsZUFBZUY7Z0JBRS9CLE9BQU9JO1lBQ1Q7OztZQUVBRCxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVVQsSUFBSTtnQkFDWixJQUFNUSxjQUFjLElBQUksQ0FBQ1IsSUFBSSxDQUFDSSxLQUFLLENBQUNKO2dCQUVwQyxPQUFPUTtZQUNUOzs7WUFFQUQsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVVOLElBQUk7Z0JBQ1osSUFBTUssY0FBYyxJQUFJLENBQUNMLElBQUksQ0FBQ0csS0FBSyxDQUFDSDtnQkFFcEMsT0FBT0s7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJYLElBQUksRUFBRUMsSUFBSTtnQkFDekIsSUFBTU8sY0FBYyxJQUFJLENBQUNDLFNBQVMsQ0FBQ1QsT0FDN0JNLGNBQWMsSUFBSSxDQUFDQyxTQUFTLENBQUNOLE9BQzdCVyxxQkFBcUJKLGVBQWVGO2dCQUUxQyxPQUFPTTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLFNBQVNDLE1BQU07Z0JBQ2IsSUFBTUMsV0FBVyxJQUFJLENBQUNkLElBQUksQ0FBQ2UsT0FBTztnQkFFbEMsSUFBSUMsU0FBU0MsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNsQixJQUFJLEVBQUVjO2dCQUVyQ0csU0FBUyxBQUFDLEdBQVlGLE9BQVZFLFFBQU8sS0FBWSxPQUFURixXQUFZLEdBQUc7Z0JBRXJDLE9BQU9FO1lBQ1Q7Ozs7WUFFT0UsS0FBQUE7bUJBQVAsU0FBT0Esd0JBQXdCQyxZQUFZLEVBQUVuQixJQUFJO2dCQUMvQyxJQUFNRCxPQUFPb0IsY0FDUGYsV0FBVyxJQXhEQU4sU0F3RGFDLE1BQU1DO2dCQUVwQyxPQUFPSTtZQUNUOzs7V0EzRG1CTiJ9
|
|
@@ -128,7 +128,7 @@ _define_property(StatementAsCombinatorVerifier, "maps", [
|
|
|
128
128
|
{
|
|
129
129
|
nodeQuery: statementNodeQuery,
|
|
130
130
|
verify: function(statementNode, fileContext) {
|
|
131
|
-
var verifyStatement = _shim.default.verifyStatement, derived = true, assignments =
|
|
131
|
+
var verifyStatement = _shim.default.verifyStatement, derived = true, assignments = [], localContext = _local.default.fromFileContext(fileContext), statementVerified = verifyStatement(statementNode, assignments, derived, localContext);
|
|
132
132
|
return statementVerified;
|
|
133
133
|
}
|
|
134
134
|
},
|
|
@@ -153,4 +153,4 @@ _define_property(StatementAsCombinatorVerifier, "maps", [
|
|
|
153
153
|
var statementAsCombinatorVerifier = new StatementAsCombinatorVerifier();
|
|
154
154
|
var _default = statementAsCombinatorVerifier;
|
|
155
155
|
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci9zdGF0ZW1lbnRBc0NvbWJpbmF0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBzaGltIGZyb20gXCIuLi9zaGltXCI7XG5pbXBvcnQgVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyXCI7XG5pbXBvcnQgdmVyaWZ5VHlwZSBmcm9tIFwiLi4vdmVyaWZ5L3R5cGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IExvY2FsQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9sb2NhbFwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm0hXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90eXBlIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQhXCIpO1xuXG5jbGFzcyBTdGF0ZW1lbnRBc0NvbWJpbmF0b3JWZXJpZmllciBleHRlbmRzIFZlcmlmaWVyIHtcbiAgdmVyaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGUsIGZpbGVDb250ZXh0KSB7XG4gICAgbGV0IHN0YXRlbWVudFZlcmlmaWVkQXNDb21iaW5hdG9yO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gc3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgY2hpbGROb2Rlc1ZlcmlmaWVkID0gdGhpcy52ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIGZpbGVDb250ZXh0KTtcblxuICAgIHN0YXRlbWVudFZlcmlmaWVkQXNDb21iaW5hdG9yID0gY2hpbGROb2Rlc1ZlcmlmaWVkOyAgLy8vXG5cbiAgICByZXR1cm4gc3RhdGVtZW50VmVyaWZpZWRBc0NvbWJpbmF0b3I7XG4gIH1cblxuICBzdGF0aWMgbWFwcyA9IFtcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IHN0YXRlbWVudE5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHN0YXRlbWVudE5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgdmVyaWZ5U3RhdGVtZW50IH0gPSBzaGltLFxuICAgICAgICAgICAgICBkZXJpdmVkID0gdHJ1ZSwgLy8vXG4gICAgICAgICAgICAgIGFzc2lnbm1lbnRzID0gW10sXG4gICAgICAgICAgICAgIGxvY2FsQ29udGV4dCA9IExvY2FsQ29udGV4dC5mcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpLFxuICAgICAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gc3RhdGVtZW50VmVyaWZpZWQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IHRlcm1Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6ICh0ZXJtTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgeyB2ZXJpZnlUZXJtIH0gPSBzaGltLFxuICAgICAgICAgICAgICB0ZXJtcyA9IFtdLFxuICAgICAgICAgICAgICBsb2NhbENvbnRleHQgPSBMb2NhbENvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KSxcbiAgICAgICAgICAgICAgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdGVybXMsIGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0ZXJtVmVyaWZpZWQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IHR5cGVOb2RlUXVlcnksXG4gICAgICB2ZXJpZnk6ICh0eXBlTm9kZSwgbG9jYWxDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IHR5cGVWZXJpZmllZCA9IHZlcmlmeVR5cGUodHlwZU5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIHR5cGVWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9XG4gIF07XG59XG5cbmNvbnN0IHN0YXRlbWVudEFzQ29tYmluYXRvclZlcmlmaWVyID0gbmV3IFN0YXRlbWVudEFzQ29tYmluYXRvclZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHN0YXRlbWVudEFzQ29tYmluYXRvclZlcmlmaWVyO1xuIl0sIm5hbWVzIjpbInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ0eXBlTm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5IiwiU3RhdGVtZW50QXNDb21iaW5hdG9yVmVyaWZpZXIiLCJ2ZXJpZnlTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlIiwiZmlsZUNvbnRleHQiLCJzdGF0ZW1lbnRWZXJpZmllZEFzQ29tYmluYXRvciIsIm5vblRlcm1pbmFsTm9kZSIsImNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwiY2hpbGROb2Rlc1ZlcmlmaWVkIiwidmVyaWZ5Q2hpbGROb2RlcyIsIlZlcmlmaWVyIiwibWFwcyIsInZlcmlmeSIsInNoaW0iLCJkZXJpdmVkIiwiYXNzaWdubWVudHMiLCJsb2NhbENvbnRleHQiLCJMb2NhbENvbnRleHQiLCJmcm9tRmlsZUNvbnRleHQiLCJzdGF0ZW1lbnRWZXJpZmllZCIsInRlcm1Ob2RlIiwidmVyaWZ5VGVybSIsInRlcm1zIiwidGVybVZlcmlmaWVkIiwidmVyaWZpZWRBaGVhZCIsInR5cGVOb2RlIiwidHlwZVZlcmlmaWVkIiwidmVyaWZ5VHlwZSIsInN0YXRlbWVudEFzQ29tYmluYXRvclZlcmlmaWVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFtRUE7OztlQUFBOzs7MkRBakVpQjsrREFDSTsyREFDRTtxQkFFRzs0REFDRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFekIsSUFBTUEsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLFdBQzFCQyxnQkFBZ0JELElBQUFBLGdCQUFTLEVBQUMsV0FDMUJFLHFCQUFxQkYsSUFBQUEsZ0JBQVMsRUFBQztBQUVyQyxJQUFBLEFBQU1HLDhDQUFOO2NBQU1BO2FBQUFBO2dDQUFBQTtpQ0FBQUE7O2tCQUFBQTs7WUFDSkMsS0FBQUE7bUJBQUFBLFNBQUFBLGdCQUFnQkMsYUFBYSxFQUFFQyxXQUFXO2dCQUN4QyxJQUFJQztnQkFFSixJQUFNQyxrQkFBa0JILGVBQ2xCSSxhQUFhRCxnQkFBZ0JFLGFBQWEsSUFDMUNDLHFCQUFxQixJQUFJLENBQUNDLGdCQUFnQixDQUFDSCxZQUFZSDtnQkFFN0RDLGdDQUFnQ0ksb0JBQXFCLEdBQUc7Z0JBRXhELE9BQU9KO1lBQ1Q7OztXQVhJSjtFQUFzQ1UsaUJBQVE7QUFhbEQsaUJBYklWLCtCQWFHVyxRQUFPO0lBQ1o7UUFDRWQsV0FBV0U7UUFDWGEsUUFBUSxTQUFDVixlQUFlQztZQUN0QixJQUFNLEFBQUVGLGtCQUFvQlksYUFBSSxDQUF4QlosaUJBQ0ZhLFVBQVUsTUFDVkMsY0FBYyxFQUFFLEVBQ2hCQyxlQUFlQyxjQUFZLENBQUNDLGVBQWUsQ0FBQ2YsY0FDNUNnQixvQkFBb0JsQixnQkFBZ0JDLGVBQWVhLGFBQWFELFNBQVNFO1lBRS9FLE9BQU9HO1FBQ1Q7SUFDRjtJQUNBO1FBQ0V0QixXQUFXRDtRQUNYZ0IsUUFBUSxTQUFDUSxVQUFVakI7WUFDakIsSUFBTSxBQUFFa0IsYUFBZVIsYUFBSSxDQUFuQlEsWUFDRkMsUUFBUSxFQUFFLEVBQ1ZOLGVBQWVDLGNBQVksQ0FBQ0MsZUFBZSxDQUFDZixjQUM1Q29CLGVBQWVGLFdBQVdELFVBQVVFLE9BQU9OLGNBQWM7Z0JBQ3ZELElBQU1RLGdCQUFnQjtnQkFFdEIsT0FBT0E7WUFDVDtZQUVOLE9BQU9EO1FBQ1Q7SUFDRjtJQUNBO1FBQ0UxQixXQUFXQztRQUNYYyxRQUFRLFNBQUNhLFVBQVVUO1lBQ2pCLElBQU1VLGVBQWVDLElBQUFBLGFBQVUsRUFBQ0YsVUFBVVQ7WUFFMUMsT0FBT1U7UUFDVDtJQUNGO0NBQ0Q7QUFHSCxJQUFNRSxnQ0FBZ0MsSUFBSTVCO0lBRTFDLFdBQWU0QiJ9
|
|
@@ -8,14 +8,8 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return verifyContainedAssertion;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
12
11
|
var _verify = require("../../utilities/verify");
|
|
13
12
|
var _query = require("../../utilities/query");
|
|
14
|
-
function _interop_require_default(obj) {
|
|
15
|
-
return obj && obj.__esModule ? obj : {
|
|
16
|
-
default: obj
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
13
|
var termNodeQuery = (0, _query.nodeQuery)("/statement/term!"), statementTermNodesQuery = (0, _query.nodesQuery)("/statement/metaArgument/statement//term");
|
|
20
14
|
function verifyContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
|
|
21
15
|
var containedAssertionVerified;
|
|
@@ -64,11 +58,11 @@ function verifyDerivedContainedAssertion(containedAssertionNode, assignments, de
|
|
|
64
58
|
return derivedContainedAssertionVerified;
|
|
65
59
|
}
|
|
66
60
|
function verifyStatedContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
|
|
67
|
-
var statedContainedAssertionVerified
|
|
61
|
+
var statedContainedAssertionVerified;
|
|
68
62
|
if (!derived) {
|
|
69
63
|
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
70
64
|
localContext.trace("Verifying the '".concat(containedAssertionString, "' stated contained assertion..."), containedAssertionNode);
|
|
71
|
-
|
|
65
|
+
statedContainedAssertionVerified = true;
|
|
72
66
|
if (statedContainedAssertionVerified) {
|
|
73
67
|
localContext.debug("...verified the '".concat(containedAssertionString, "' stated contained assertion."), containedAssertionNode);
|
|
74
68
|
}
|
|
@@ -76,4 +70,4 @@ function verifyStatedContainedAssertion(containedAssertionNode, assignments, der
|
|
|
76
70
|
return statedContainedAssertionVerified;
|
|
77
71
|
}
|
|
78
72
|
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2NvbnRhaW5lZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgaXNBc3NlcnRpb25OZWdhdGVkIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy92ZXJpZnlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvdGVybSFcIiksXG4gICAgICBzdGF0ZW1lbnRUZXJtTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvc3RhdGVtZW50L21ldGFBcmd1bWVudC9zdGF0ZW1lbnQvL3Rlcm1cIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcblxuICBjb25zdCBjb250YWluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgY29uc3QgdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zID0gW1xuICAgIHZlcmlmeURlcml2ZWRDb250YWluZWRBc3NlcnRpb24sXG4gICAgdmVyaWZ5U3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uXG4gIF07XG5cbiAgY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlDb250YWluZWRBc3NlcnRpb25GdW5jdGlvbnMuc29tZSgodmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb24pID0+IHtcbiAgICBjb25zdCBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9uKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIGlmIChjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGNvbnRhaW5lZCBhc3NlcnRpb24uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gIH1cblxuICByZXR1cm4gY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeURlcml2ZWRDb250YWluZWRBc3NlcnRpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKGRlcml2ZWQpIHtcbiAgICBjb25zdCBjb250YWluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGRlcml2ZWQgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgYXNzZXJ0aW9uTmVnYXRlZCA9IGlzQXNzZXJ0aW9uTmVnYXRlZChjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgbmVnYXRlZCA9IGFzc2VydGlvbk5lZ2F0ZWQsIC8vL1xuICAgICAgICAgIHN0YXRlbWVudFRlcm1Ob2RlcyA9IHN0YXRlbWVudFRlcm1Ob2Rlc1F1ZXJ5KGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIHRlcm1Ob2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSA9IHN0YXRlbWVudFRlcm1Ob2Rlcy5zb21lKChzdGF0ZW1lbnRUZXJtTm9kZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGVybU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlID0gdGVybU5vZGUubWF0Y2goc3RhdGVtZW50VGVybU5vZGUpO1xuXG4gICAgICAgICAgICBpZiAodGVybU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgaWYgKCFuZWdhdGVkKSB7XG4gICAgICBpZiAodGVybU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgIGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG5lZ2F0ZWQpIHtcbiAgICAgIGlmICghdGVybU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgIGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YXRlZENvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcblxuICBpZiAoIWRlcml2ZWQpIHtcbiAgICBjb25zdCBjb250YWluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG5cbiAgICBpZiAoc3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlDb250YWluZWRBc3NlcnRpb24iLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50VGVybU5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwiY29udGFpbmVkQXNzZXJ0aW9uTm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsImNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJ2ZXJpZnlDb250YWluZWRBc3NlcnRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uIiwidmVyaWZ5U3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uIiwic29tZSIsInZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiLCJhc3NlcnRpb25OZWdhdGVkIiwiaXNBc3NlcnRpb25OZWdhdGVkIiwidGVybU5vZGUiLCJuZWdhdGVkIiwic3RhdGVtZW50VGVybU5vZGVzIiwidGVybU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlIiwic3RhdGVtZW50VGVybU5vZGUiLCJtYXRjaCIsInN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFRQTs7O2VBQXdCQTs7O3NCQU5XO3FCQUNHO0FBRXRDLElBQU1DLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxxQkFDMUJDLDBCQUEwQkMsSUFBQUEsaUJBQVUsRUFBQztBQUU1QixTQUFTSix5QkFBeUJLLHNCQUFzQixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsWUFBWTtJQUN6RyxJQUFJQztJQUVKLElBQU1DLDJCQUEyQkYsYUFBYUcsWUFBWSxDQUFDTjtJQUUzREcsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQTBDLE9BQXpCRiwwQkFBeUIsNkJBQTJCTDtJQUV6RixJQUFNUSxvQ0FBb0M7UUFDeENDO1FBQ0FDO0tBQ0Q7SUFFRE4sNkJBQTZCSSxrQ0FBa0NHLElBQUksQ0FBQyxTQUFDQztRQUNuRSxJQUFNUiw2QkFBNkJRLGlDQUFpQ1osd0JBQXdCQyxhQUFhQyxTQUFTQztRQUVsSCxJQUFJQyw0QkFBNEI7WUFDOUIsT0FBTztRQUNUO0lBQ0Y7SUFFQSxJQUFJQSw0QkFBNEI7UUFDOUJELGFBQWFVLEtBQUssQ0FBQyxBQUFDLG9CQUE0QyxPQUF6QlIsMEJBQXlCLDJCQUF5Qkw7SUFDM0Y7SUFFQSxPQUFPSTtBQUNUO0FBRUEsU0FBU0ssZ0NBQWdDVCxzQkFBc0IsRUFBRUMsV0FBVyxFQUFFQyxPQUFPLEVBQUVDLFlBQVk7SUFDakcsSUFBSVcsb0NBQW9DO0lBRXhDLElBQUlaLFNBQVM7UUFDWCxJQUFNRywyQkFBMkJGLGFBQWFHLFlBQVksQ0FBQ047UUFFM0RHLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUEwQyxPQUF6QkYsMEJBQXlCLHFDQUFtQ0w7UUFFakcsSUFBTWUsbUJBQW1CQyxJQUFBQSwwQkFBa0IsRUFBQ2hCLHlCQUN0Q2lCLFdBQVdyQixjQUFjSSx5QkFDekJrQixVQUFVSCxrQkFDVkkscUJBQXFCckIsd0JBQXdCRSx5QkFDN0NvQiwwQ0FBMENELG1CQUFtQlIsSUFBSSxDQUFDLFNBQUNVO1lBQ2pFLElBQU1ELDBDQUEwQ0gsU0FBU0ssS0FBSyxDQUFDRDtZQUUvRCxJQUFJRCx5Q0FBeUM7Z0JBQzNDLE9BQU87WUFDVDtRQUNGO1FBRU4sSUFBSSxDQUFDRixTQUFTO1lBQ1osSUFBSUUseUNBQXlDO2dCQUMzQ04sb0NBQW9DO1lBQ3RDO1FBQ0Y7UUFFQSxJQUFJSSxTQUFTO1lBQ1gsSUFBSSxDQUFDRSx5Q0FBeUM7Z0JBQzVDTixvQ0FBb0M7WUFDdEM7UUFDRjtRQUVBLElBQUlBLG1DQUFtQztZQUNyQ1gsYUFBYVUsS0FBSyxDQUFDLEFBQUMsb0JBQTRDLE9BQXpCUiwwQkFBeUIsbUNBQWlDTDtRQUNuRztJQUNGO0lBRUEsT0FBT2M7QUFDVDtBQUVBLFNBQVNKLCtCQUErQlYsc0JBQXNCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQ2hHLElBQUlvQjtJQUVKLElBQUksQ0FBQ3JCLFNBQVM7UUFDWixJQUFNRywyQkFBMkJGLGFBQWFHLFlBQVksQ0FBQ047UUFFM0RHLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUEwQyxPQUF6QkYsMEJBQXlCLG9DQUFrQ0w7UUFFaEd1QixtQ0FBbUM7UUFFbkMsSUFBSUEsa0NBQWtDO1lBQ3BDcEIsYUFBYVUsS0FBSyxDQUFDLEFBQUMsb0JBQTRDLE9BQXpCUiwwQkFBeUIsa0NBQWdDTDtRQUNsRztJQUNGO0lBRUEsT0FBT3VCO0FBQ1QifQ==
|
|
@@ -86,11 +86,11 @@ function verifyDerivedDefinedAssertion(definedAssertionNode, assignments, derive
|
|
|
86
86
|
return derivedDefinedAssertionVerified;
|
|
87
87
|
}
|
|
88
88
|
function verifyStatedDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
|
|
89
|
-
var statedDefinedAssertionVerified
|
|
89
|
+
var statedDefinedAssertionVerified;
|
|
90
90
|
if (!derived) {
|
|
91
91
|
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
92
92
|
localContext.trace("Verifying the '".concat(definedAssertionString, "' stated defined assertion..."), definedAssertionNode);
|
|
93
|
-
|
|
93
|
+
statedDefinedAssertionVerified = true;
|
|
94
94
|
if (statedDefinedAssertionVerified) {
|
|
95
95
|
localContext.debug("...verified the '".concat(definedAssertionString, "' stated defined assertion."), definedAssertionNode);
|
|
96
96
|
}
|
|
@@ -98,4 +98,4 @@ function verifyStatedDefinedAssertion(definedAssertionNode, assignments, derived
|
|
|
98
98
|
return statedDefinedAssertionVerified;
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2RlZmluZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlUZXJtIGZyb20gXCIuLi8uLi92ZXJpZnkvdGVybVwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGlzQXNzZXJ0aW9uTmVnYXRlZCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvdmVyaWZ5XCI7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L3Rlcm0hXCIpLFxuICAgICAgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L3Rlcm0vdmFyaWFibGUhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG5cbiAgY29uc3QgZGVmaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgY29uc3QgdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgICB2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbixcbiAgICB2ZXJpZnlTdGF0ZWREZWZpbmVkQXNzZXJ0aW9uXG4gIF07XG5cbiAgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucy5zb21lKCh2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24pID0+
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2RlZmluZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlUZXJtIGZyb20gXCIuLi8uLi92ZXJpZnkvdGVybVwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGlzQXNzZXJ0aW9uTmVnYXRlZCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvdmVyaWZ5XCI7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L3Rlcm0hXCIpLFxuICAgICAgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L3Rlcm0vdmFyaWFibGUhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG5cbiAgY29uc3QgZGVmaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgY29uc3QgdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgICB2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbixcbiAgICB2ZXJpZnlTdGF0ZWREZWZpbmVkQXNzZXJ0aW9uXG4gIF07XG5cbiAgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucy5zb21lKCh2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24pID0+IHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKGRlZmluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICBpZiAoZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeURlcml2ZWREZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKGRlcml2ZWQpIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIGRlcml2ZWQgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBzdGF0ZW1lbnROZWdhdGVkID0gaXNBc3NlcnRpb25OZWdhdGVkKGRlZmluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICB2YXJpYWJsZU5vZGUgPSB2YXJpYWJsZU5vZGVRdWVyeShkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHZhcmlhYmxlID0gbG9jYWxDb250ZXh0LmZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSk7XG5cbiAgICAgIGlmICh2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2YXJpYWJsZURlZmluZWQgPSBsb2NhbENvbnRleHQuaXNWYXJpYWJsZURlZmluZWQodmFyaWFibGUpO1xuXG4gICAgICAgIGlmICghc3RhdGVtZW50TmVnYXRlZCkge1xuICAgICAgICAgIGlmICh2YXJpYWJsZURlZmluZWQpIHtcbiAgICAgICAgICAgIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGF0ZW1lbnROZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKCF2YXJpYWJsZURlZmluZWQpIHtcbiAgICAgICAgICAgIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGVybU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHRlcm1zID0gW10sXG4gICAgICAgICAgICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHRlcm1Ob2RlLCB0ZXJtcywgbG9jYWxDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgIGlmICh0ZXJtVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgZmlyc3RUZXJtID0gZmlyc3QodGVybXMpLFxuICAgICAgICAgICAgICB0ZXJtID0gZmlyc3RUZXJtLCAvLy9cbiAgICAgICAgICAgICAgdGVybUdyb3VuZGVkID0gbG9jYWxDb250ZXh0LmlzVGVybUdyb3VuZGVkKHRlcm0pO1xuXG4gICAgICAgIGlmICghc3RhdGVtZW50TmVnYXRlZCkge1xuICAgICAgICAgIGlmICh0ZXJtR3JvdW5kZWQpIHtcbiAgICAgICAgICAgIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGF0ZW1lbnROZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKCF0ZXJtR3JvdW5kZWQpIHtcbiAgICAgICAgICAgIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBkZWZpbmVkIGFzc2VydGlvbi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZDtcblxuICBpZiAoIWRlcml2ZWQpIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBkZWZpbmVkIGFzc2VydGlvbi4uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIHN0YXRlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG5cbiAgICBpZiAoc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeURlZmluZWRBc3NlcnRpb24iLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidmFyaWFibGVOb2RlUXVlcnkiLCJkZWZpbmVkQXNzZXJ0aW9uTm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsImRlZmluZWRBc3NlcnRpb25WZXJpZmllZCIsImRlZmluZWRBc3NlcnRpb25TdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb24iLCJzb21lIiwidmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkIiwic3RhdGVtZW50TmVnYXRlZCIsImlzQXNzZXJ0aW9uTmVnYXRlZCIsInZhcmlhYmxlTm9kZSIsInRlcm1Ob2RlIiwidmFyaWFibGUiLCJmaW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSIsInZhcmlhYmxlRGVmaW5lZCIsImlzVmFyaWFibGVEZWZpbmVkIiwidGVybXMiLCJ0ZXJtVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtIiwidmVyaWZpZWRBaGVhZCIsImZpcnN0VGVybSIsImZpcnN0IiwidGVybSIsInRlcm1Hcm91bmRlZCIsImlzVGVybUdyb3VuZGVkIiwic3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFXQTs7O2VBQXdCQTs7OzJEQVREO3FCQUVEO3FCQUNJO3NCQUNTOzs7Ozs7QUFFbkMsSUFBTUMsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLHFCQUMxQkMsb0JBQW9CRCxJQUFBQSxnQkFBUyxFQUFDO0FBRXJCLFNBQVNGLHVCQUF1Qkksb0JBQW9CLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQ3JHLElBQUlDO0lBRUosSUFBTUMseUJBQXlCRixhQUFhRyxZQUFZLENBQUNOO0lBRXpERyxhQUFhSSxLQUFLLENBQUMsQUFBQyxrQkFBd0MsT0FBdkJGLHdCQUF1QiwyQkFBeUJMO0lBRXJGLElBQU1RLGtDQUFrQztRQUN0Q0M7UUFDQUM7S0FDRDtJQUVETiwyQkFBMkJJLGdDQUFnQ0csSUFBSSxDQUFDLFNBQUNDO1FBQy9ELElBQU1SLDJCQUEyQlEsK0JBQStCWixzQkFBc0JDLGFBQWFDLFNBQVNDO1FBRTVHLElBQUlDLDBCQUEwQjtZQUM1QixPQUFPO1FBQ1Q7SUFDRjtJQUVBLElBQUlBLDBCQUEwQjtRQUM1QkQsYUFBYVUsS0FBSyxDQUFDLEFBQUMsb0JBQTBDLE9BQXZCUix3QkFBdUIseUJBQXVCTDtJQUN2RjtJQUVBLE9BQU9JO0FBQ1Q7QUFFQSxTQUFTSyw4QkFBOEJULG9CQUFvQixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsWUFBWTtJQUM3RixJQUFJVyxrQ0FBa0M7SUFFdEMsSUFBSVosU0FBUztRQUNYLElBQU1HLHlCQUF5QkYsYUFBYUcsWUFBWSxDQUFDTjtRQUV6REcsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQXdDLE9BQXZCRix3QkFBdUIsbUNBQWlDTDtRQUU3RixJQUFNZSxtQkFBbUJDLElBQUFBLDBCQUFrQixFQUFDaEIsdUJBQ3RDaUIsZUFBZWxCLGtCQUFrQkMsdUJBQ2pDa0IsV0FBV3JCLGNBQWNHO1FBRS9CLElBQUksT0FBTztRQUNULEdBQUc7UUFDTCxPQUFPLElBQUlpQixpQkFBaUIsTUFBTTtZQUNoQyxJQUFNRSxXQUFXaEIsYUFBYWlCLDBCQUEwQixDQUFDSDtZQUV6RCxJQUFJRSxhQUFhLE1BQU07Z0JBQ3JCLElBQU1FLGtCQUFrQmxCLGFBQWFtQixpQkFBaUIsQ0FBQ0g7Z0JBRXZELElBQUksQ0FBQ0osa0JBQWtCO29CQUNyQixJQUFJTSxpQkFBaUI7d0JBQ25CUCxrQ0FBa0M7b0JBQ3BDO2dCQUNGO2dCQUVBLElBQUlDLGtCQUFrQjtvQkFDcEIsSUFBSSxDQUFDTSxpQkFBaUI7d0JBQ3BCUCxrQ0FBa0M7b0JBQ3BDO2dCQUNGO1lBQ0Y7UUFDRixPQUFPLElBQUlJLGFBQWEsTUFBTTtZQUM1QixJQUFNSyxRQUFRLEVBQUUsRUFDVkMsZUFBZUMsSUFBQUEsYUFBVSxFQUFDUCxVQUFVSyxPQUFPcEIsY0FBYztnQkFDdkQsSUFBTXVCLGdCQUFnQjtnQkFFdEIsT0FBT0E7WUFDVDtZQUVOLElBQUlGLGNBQWM7Z0JBQ2hCLElBQU1HLFlBQVlDLElBQUFBLFlBQUssRUFBQ0wsUUFDbEJNLE9BQU9GLFdBQ1BHLGVBQWUzQixhQUFhNEIsY0FBYyxDQUFDRjtnQkFFakQsSUFBSSxDQUFDZCxrQkFBa0I7b0JBQ3JCLElBQUllLGNBQWM7d0JBQ2hCaEIsa0NBQWtDO29CQUNwQztnQkFDRjtnQkFFQSxJQUFJQyxrQkFBa0I7b0JBQ3BCLElBQUksQ0FBQ2UsY0FBYzt3QkFDakJoQixrQ0FBa0M7b0JBQ3BDO2dCQUNGO1lBQ0Y7UUFDRjtRQUVBLElBQUlBLGlDQUFpQztZQUNuQ1gsYUFBYVUsS0FBSyxDQUFDLEFBQUMsb0JBQTBDLE9BQXZCUix3QkFBdUIsaUNBQStCTDtRQUMvRjtJQUNGO0lBRUEsT0FBT2M7QUFDVDtBQUVBLFNBQVNKLDZCQUE2QlYsb0JBQW9CLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQzVGLElBQUk2QjtJQUVKLElBQUksQ0FBQzlCLFNBQVM7UUFDWixJQUFNRyx5QkFBeUJGLGFBQWFHLFlBQVksQ0FBQ047UUFFekRHLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUF3QyxPQUF2QkYsd0JBQXVCLGtDQUFnQ0w7UUFFNUZnQyxpQ0FBaUM7UUFFakMsSUFBSUEsZ0NBQWdDO1lBQ2xDN0IsYUFBYVUsS0FBSyxDQUFDLEFBQUMsb0JBQTBDLE9BQXZCUix3QkFBdUIsZ0NBQThCTDtRQUM5RjtJQUNGO0lBRUEsT0FBT2dDO0FBQ1QifQ==
|