occam-verify-cli 0.0.1036 → 0.0.1038
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/assertion/subproof.js +80 -49
- package/lib/assertion/type.js +5 -5
- package/lib/context/file.js +6 -20
- package/lib/context/release.js +24 -84
- package/lib/equality.js +5 -5
- package/lib/metavariable.js +92 -6
- package/lib/mixins/statement/verify.js +3 -3
- package/lib/premise.js +25 -34
- package/lib/ruleNames.js +5 -1
- package/lib/statement.js +17 -4
- package/lib/substitution/frameForMetavariable.js +4 -4
- package/lib/substitution/statement.js +139 -0
- package/lib/substitution/statementForMetavariable.js +39 -22
- package/lib/substitution/termForVariable.js +17 -16
- package/lib/supposition.js +48 -57
- package/lib/unifier/intrinsicLevel.js +4 -4
- package/lib/unifier/metaLevel.js +22 -20
- package/lib/unifier/statementWithCombinator.js +1 -2
- package/lib/utilities/node.js +15 -1
- package/lib/utilities/tokens.js +8 -1
- package/lib/variable.js +13 -6
- package/lib/verifier/intrinsicLevel.js +2 -2
- package/lib/verifier/metaLevel.js +2 -2
- package/lib/verify/assertion/subproof.js +1 -49
- package/package.json +1 -1
- package/src/assertion/subproof.js +102 -56
- package/src/assertion/type.js +4 -4
- package/src/context/file.js +2 -48
- package/src/context/release.js +27 -65
- package/src/equality.js +4 -4
- package/src/metavariable.js +115 -6
- package/src/mixins/statement/verify.js +3 -2
- package/src/premise.js +33 -47
- package/src/ruleNames.js +1 -0
- package/src/statement.js +21 -4
- package/src/substitution/frameForMetavariable.js +3 -2
- package/src/substitution/statement.js +52 -0
- package/src/substitution/statementForMetavariable.js +50 -22
- package/src/substitution/termForVariable.js +21 -19
- package/src/supposition.js +64 -78
- package/src/unifier/intrinsicLevel.js +6 -7
- package/src/unifier/metaLevel.js +33 -26
- package/src/unifier/statementWithCombinator.js +0 -1
- package/src/utilities/node.js +16 -0
- package/src/utilities/tokens.js +7 -0
- package/src/variable.js +12 -5
- package/src/verifier/intrinsicLevel.js +3 -3
- package/src/verifier/metaLevel.js +3 -3
- package/src/verify/assertion/subproof.js +0 -63
- package/lib/unify/conclusionWithStatement.js +0 -34
- package/lib/unify/consequentWithStatement.js +0 -34
- package/lib/unify/metavariableWithStatement.js +0 -40
- package/lib/unify/metavariableWithStatementGivenSubstitution.js +0 -40
- package/lib/unify/suppositionWithProffStep.js +0 -41
- package/lib/unify/suppositionsWithProofSteps.js +0 -31
- package/lib/unify/unqualifiedStatement.js +0 -25
- package/lib/verify/file.js +0 -35
- package/lib/verify/subDerivation.js +0 -31
- package/src/unify/conclusionWithStatement.js +0 -34
- package/src/unify/consequentWithStatement.js +0 -34
- package/src/unify/metavariableWithStatement.js +0 -40
- package/src/unify/metavariableWithStatementGivenSubstitution.js +0 -41
- package/src/unify/suppositionWithProffStep.js +0 -54
- package/src/unify/suppositionsWithProofSteps.js +0 -23
- package/src/unify/unqualifiedStatement.js +0 -24
- package/src/verify/file.js +0 -29
- package/src/verify/subDerivation.js +0 -24
package/lib/variable.js
CHANGED
|
@@ -41,14 +41,21 @@ function _interop_require_default(obj) {
|
|
|
41
41
|
}
|
|
42
42
|
var typeNodeQuery = (0, _query.nodeQuery)("/variableDeclaration/type"), variableNodeQuery = (0, _query.nodeQuery)("/variableDeclaration/variable"), termVariableNodeQuery = (0, _query.nodeQuery)("/term/variable");
|
|
43
43
|
var Variable = /*#__PURE__*/ function() {
|
|
44
|
-
function Variable(string, node, name, type) {
|
|
44
|
+
function Variable(localContext, string, node, name, type) {
|
|
45
45
|
_class_call_check(this, Variable);
|
|
46
|
+
this.localContext = localContext; ///
|
|
46
47
|
this.string = string;
|
|
47
48
|
this.node = node;
|
|
48
49
|
this.name = name;
|
|
49
50
|
this.type = type;
|
|
50
51
|
}
|
|
51
52
|
_create_class(Variable, [
|
|
53
|
+
{
|
|
54
|
+
key: "getLocalContext",
|
|
55
|
+
value: function getLocalContext() {
|
|
56
|
+
return this.localContext;
|
|
57
|
+
}
|
|
58
|
+
},
|
|
52
59
|
{
|
|
53
60
|
key: "getString",
|
|
54
61
|
value: function getString() {
|
|
@@ -197,7 +204,7 @@ var Variable = /*#__PURE__*/ function() {
|
|
|
197
204
|
{
|
|
198
205
|
key: "fromJSON",
|
|
199
206
|
value: function fromJSON(json, fileContext) {
|
|
200
|
-
var string = json.string, lexer = fileContext.getLexer(), parser = fileContext.getParser(), variableString = string, variableNode = (0, _node.variableNodeFromVariableString)(variableString, lexer, parser), variableName = (0, _name.variableNameFromVariableNode)(variableNode), node = variableNode, name = variableName, type = typeFromJSON(json, fileContext), variable = new Variable(string, node, name, type);
|
|
207
|
+
var string = json.string, lexer = fileContext.getLexer(), parser = fileContext.getParser(), variableString = string, variableNode = (0, _node.variableNodeFromVariableString)(variableString, lexer, parser), variableName = (0, _name.variableNameFromVariableNode)(variableNode), localContext = _local.default.fromFileContext(fileContext), node = variableNode, name = variableName, type = typeFromJSON(json, fileContext), variable = new Variable(localContext, string, node, name, type);
|
|
201
208
|
return variable;
|
|
202
209
|
}
|
|
203
210
|
},
|
|
@@ -207,7 +214,7 @@ var Variable = /*#__PURE__*/ function() {
|
|
|
207
214
|
var variable = null;
|
|
208
215
|
if (variableNode !== null) {
|
|
209
216
|
var node = variableNode, variableName = (0, _name.variableNameFromVariableNode)(variableNode), string = localContext.nodeAsString(node), name = variableName, type = null;
|
|
210
|
-
variable = new Variable(string, node, name, type);
|
|
217
|
+
variable = new Variable(localContext, string, node, name, type);
|
|
211
218
|
}
|
|
212
219
|
return variable;
|
|
213
220
|
}
|
|
@@ -215,14 +222,14 @@ var Variable = /*#__PURE__*/ function() {
|
|
|
215
222
|
{
|
|
216
223
|
key: "fromVariableNodeAndType",
|
|
217
224
|
value: function fromVariableNodeAndType(variableNode, type, localContext) {
|
|
218
|
-
var node = variableNode, variableName = (0, _name.variableNameFromVariableNode)(variableNode), string = localContext.nodeAsString(node), name = variableName, variable = new Variable(string, node, name, type);
|
|
225
|
+
var node = variableNode, variableName = (0, _name.variableNameFromVariableNode)(variableNode), string = localContext.nodeAsString(node), name = variableName, variable = new Variable(localContext, string, node, name, type);
|
|
219
226
|
return variable;
|
|
220
227
|
}
|
|
221
228
|
},
|
|
222
229
|
{
|
|
223
230
|
key: "fromVariableDeclarationNode",
|
|
224
231
|
value: function fromVariableDeclarationNode(variableDeclarationNode, fileContext) {
|
|
225
|
-
var Type = _shim.default.Type, typeNode = typeNodeQuery(variableDeclarationNode), variableNode = variableNodeQuery(variableDeclarationNode), variableName = (0, _name.variableNameFromVariableNode)(variableNode), localContext = _local.default.fromFileContext(fileContext), variableString = fileContext.nodeAsString(variableNode), string = variableString, node = variableNode, name = variableName, type = Type.fromTypeNode(typeNode, localContext), variable = new Variable(string, node, name, type);
|
|
232
|
+
var Type = _shim.default.Type, typeNode = typeNodeQuery(variableDeclarationNode), variableNode = variableNodeQuery(variableDeclarationNode), variableName = (0, _name.variableNameFromVariableNode)(variableNode), localContext = _local.default.fromFileContext(fileContext), variableString = fileContext.nodeAsString(variableNode), string = variableString, node = variableNode, name = variableName, type = Type.fromTypeNode(typeNode, localContext), variable = new Variable(localContext, string, node, name, type);
|
|
226
233
|
return variable;
|
|
227
234
|
}
|
|
228
235
|
}
|
|
@@ -245,4 +252,4 @@ function termVariableFromTermNode(termNode, localContext) {
|
|
|
245
252
|
return termVariable;
|
|
246
253
|
}
|
|
247
254
|
|
|
248
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92YXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHNoaW0gZnJvbSBcIi4vc2hpbVwiO1xuaW1wb3J0IExvY2FsQ29udGV4dCBmcm9tIFwiLi9jb250ZXh0L2xvY2FsXCI7XG5pbXBvcnQgVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuL3N1YnN0aXR1dGlvbi90ZXJtRm9yVmFyaWFibGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBvYmplY3RUeXBlIH0gZnJvbSBcIi4vdHlwZVwiO1xuaW1wb3J0IHsgdmFyaWFibGVOYW1lRnJvbVZhcmlhYmxlTm9kZX0gZnJvbSBcIi4vdXRpbGl0aWVzL25hbWVcIjtcbmltcG9ydCB7IHZhcmlhYmxlTm9kZUZyb21WYXJpYWJsZVN0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9ub2RlXCI7XG5cbmNvbnN0IHR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdmFyaWFibGVEZWNsYXJhdGlvbi90eXBlXCIpLFxuICAgICAgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdmFyaWFibGVEZWNsYXJhdGlvbi92YXJpYWJsZVwiKSxcbiAgICAgIHRlcm1WYXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtL3ZhcmlhYmxlXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWYXJpYWJsZSB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgbm9kZSwgbmFtZSwgdHlwZSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMubm9kZSA9IG5vZGU7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIHNldFR5cGUodHlwZSkge1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gIH1cblxuICBtYXRjaE5vZGUobm9kZSkge1xuICAgIGNvbnN0IG5vZGVNYXRjaGVzID0gdGhpcy5ub2RlLm1hdGNoKG5vZGUpO1xuXG4gICAgcmV0dXJuIG5vZGVNYXRjaGVzO1xuICB9XG5cbiAgbWF0Y2hOYW1lKG5hbWUpIHtcbiAgICBjb25zdCBuYW1lTWF0Y2hlcyA9ICh0aGlzLm5hbWUgPT09IG5hbWUpO1xuXG4gICAgcmV0dXJuIG5hbWVNYXRjaGVzO1xuICB9XG5cbiAgdmVyaWZ5KGxvY2FsQ29udGV4dCkge1xuICAgIGxldCB2ZXJpZmllZDtcblxuICAgIGNvbnN0IHZhcmlhYmxlU3RyaW5nID0gdGhpcy5zdHJpbmc7IC8vL1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUuLi5gKTtcblxuICAgIGNvbnN0IHZhcmlhYmxlTm9kZSA9IHRoaXMubm9kZSwgLy8vXG4gICAgICAgICAgdmFyaWFibGVOYW1lID0gdmFyaWFibGVOYW1lRnJvbVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlID0gbG9jYWxDb250ZXh0LmZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSk7XG5cbiAgICBpZiAodmFyaWFibGUgPT09IG51bGwpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgVGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUgaXMgbm90IHByZXNlbnQuYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHR5cGUgPSB2YXJpYWJsZS5nZXRUeXBlKCk7XG5cbiAgICAgIHRoaXMudHlwZSA9IHR5cGU7XG5cbiAgICAgIHZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUuYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5VHlwZShmaWxlQ29udGV4dCkge1xuICAgIGxldCB0eXBlVmVyaWZpZWQ7XG5cbiAgICBpZiAodGhpcy50eXBlID09PSBvYmplY3RUeXBlKSB7XG4gICAgICB0eXBlVmVyaWZpZWQgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0eXBlTmFtZSA9IHRoaXMudHlwZS5nZXROYW1lKCk7XG5cbiAgICAgIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3R5cGVOYW1lfScgdHlwZS4uLmApO1xuXG4gICAgICBjb25zdCB0eXBlID0gZmlsZUNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKTtcblxuICAgICAgaWYgKHR5cGUgPT09IG51bGwpIHtcbiAgICAgICAgZmlsZUNvbnRleHQuZGVidWcoYFRoZSAnJHt0eXBlTmFtZX0nIHR5cGUgaXMgbWlzc2luZy5gKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudHlwZSA9IHR5cGU7IC8vL1xuXG4gICAgICAgIHR5cGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlVmVyaWZpZWQpIHtcbiAgICAgICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt0eXBlTmFtZX0nIHR5cGUuYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGVWZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeUF0VG9wTGV2ZWwoZmlsZUNvbnRleHQpIHtcbiAgICBsZXQgdmVyaWZpZWRBdFRvcExldmVsO1xuXG4gICAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlIGF0IHRvcCBsZXZlbC4uLmApO1xuXG4gICAgY29uc3QgdmFyaWFibGVOb2RlID0gdGhpcy5ub2RlLCAvLy9cbiAgICAgICAgICB2YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgdmFyaWFibGVQcmVzZW50ID0gZmlsZUNvbnRleHQuaXNWYXJpYWJsZVByZXNlbnRCeVZhcmlhYmxlTmFtZSh2YXJpYWJsZU5hbWUpO1xuXG4gICAgaWYgKHZhcmlhYmxlUHJlc2VudCkge1xuICAgICAgZmlsZUNvbnRleHQuZGVidWcoYFRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlIGlzIGFscmVhZHkgcHJlc2VudC5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdHlwZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlUeXBlKGZpbGVDb250ZXh0KTtcblxuICAgICAgdmVyaWZpZWRBdFRvcExldmVsID0gdHlwZVZlcmlmaWVkOyAgLy8vXG4gICAgfVxuXG4gICAgaWYgKHZlcmlmaWVkQXRUb3BMZXZlbCkge1xuICAgICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlIGF0IHRvcCBsZXZlbC5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmVyaWZpZWRBdFRvcExldmVsO1xuICB9XG5cbiAgdW5pZnlUZXJtKHRlcm0sIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dCkge1xuICAgIGxldCB0ZXJtVW5pZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgdGVybVN0cmluZyA9IHRlcm0uZ2V0U3RyaW5nKCksXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFVuaWZ5aW5nIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSB3aXRoIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLi4uYCk7XG5cbiAgICBjb25zdCB0ZXJtTm9kZSA9IHRlcm0uZ2V0Tm9kZSgpLFxuICAgICAgICAgIHZhcmlhYmxlTm9kZSA9IHRoaXMubm9kZSwgLy8vXG4gICAgICAgICAgc3Vic3RpdHV0aW9uID0gc3Vic3RpdHV0aW9ucy5maW5kU3Vic3RpdHV0aW9uQnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKTtcblxuICAgIGlmIChzdWJzdGl0dXRpb24gIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHRlcm1Ob2RlTWF0Y2hlcyA9IHN1YnN0aXR1dGlvbi5tYXRjaFRlcm1Ob2RlKHRlcm1Ob2RlKTtcblxuICAgICAgaWYgKHRlcm1Ob2RlTWF0Y2hlcykge1xuICAgICAgICB0ZXJtVW5pZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHZhcmlhYmxlID0gdGhpcywgIC8vL1xuICAgICAgICAgICAgdGVybVZhcmlhYmxlID0gdGVybVZhcmlhYmxlRnJvbVRlcm1Ob2RlKHRlcm1Ob2RlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAodGVybVZhcmlhYmxlID09PSB2YXJpYWJsZSkge1xuICAgICAgICB0ZXJtVW5pZmllZCA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24gPSBUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24uZnJvbVRlcm5BbmRWYXJpYWJsZSh0ZXJtLCB2YXJpYWJsZSwgbG9jYWxDb250ZXh0KSxcbiAgICAgICAgICAgICAgc3Vic3RpdHV0aW9uID0gdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uOyAgLy8vXG5cbiAgICAgICAgc3Vic3RpdHV0aW9ucy5hZGRTdWJzdGl0dXRpb24oc3Vic3RpdHV0aW9uLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIHRlcm1VbmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGVybVVuaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC50cmFjZShgLi4udW5pZmllZCB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gd2l0aCB0aGUgJyR7dmFyaWFibGVTdHJpbmd9JyB2YXJpYWJsZS5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGVybVVuaWZpZWQ7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgdHlwZUpTT04gPSB0aGlzLnR5cGUudG9KU09OKCksXG4gICAgICAgICAgc3RyaW5nID0gdGhpcy5zdHJpbmcsXG4gICAgICAgICAgdHlwZSA9IHR5cGVKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIHN0cmluZyxcbiAgICAgICAgICAgIHR5cGVcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgZmlsZUNvbnRleHQpIHtcbiAgICBjb25zdCB7IHN0cmluZyB9ID0ganNvbixcbiAgICAgICAgICBsZXhlciAgPSBmaWxlQ29udGV4dC5nZXRMZXhlcigpLFxuICAgICAgICAgIHBhcnNlciA9IGZpbGVDb250ZXh0LmdldFBhcnNlcigpLFxuICAgICAgICAgIHZhcmlhYmxlU3RyaW5nID0gc3RyaW5nLCAgLy8vXG4gICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlRnJvbVZhcmlhYmxlU3RyaW5nKHZhcmlhYmxlU3RyaW5nLCBsZXhlciwgcGFyc2VyKSxcbiAgICAgICAgICB2YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgbm9kZSA9IHZhcmlhYmxlTm9kZSxcbiAgICAgICAgICBuYW1lID0gdmFyaWFibGVOYW1lLCAgLy8vXG4gICAgICAgICAgdHlwZSA9IHR5cGVGcm9tSlNPTihqc29uLCBmaWxlQ29udGV4dCksXG4gICAgICAgICAgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUoc3RyaW5nLCBub2RlLCBuYW1lLCB0eXBlKTtcblxuICAgIHJldHVybiB2YXJpYWJsZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSwgbG9jYWxDb250ZXh0KSB7XG4gICAgbGV0IHZhcmlhYmxlID0gbnVsbDtcblxuICAgIGlmICh2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vZGUgPSB2YXJpYWJsZU5vZGUsICAvLy9cbiAgICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHZhcmlhYmxlTmFtZUZyb21WYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgIHN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobm9kZSksXG4gICAgICAgICAgICBuYW1lID0gdmFyaWFibGVOYW1lLCAgLy8vXG4gICAgICAgICAgICB0eXBlID0gbnVsbDtcblxuICAgICAgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUoc3RyaW5nLCBub2RlLCBuYW1lLCB0eXBlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlTm9kZUFuZFR5cGUodmFyaWFibGVOb2RlLCB0eXBlLCBsb2NhbENvbnRleHQpIHtcbiAgICBjb25zdCBub2RlID0gdmFyaWFibGVOb2RlLCAgLy8vXG4gICAgICAgICAgdmFyaWFibGVOYW1lID0gdmFyaWFibGVOYW1lRnJvbVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIHN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobm9kZSksXG4gICAgICAgICAgbmFtZSA9IHZhcmlhYmxlTmFtZSwgIC8vL1xuICAgICAgICAgIHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKHN0cmluZywgbm9kZSwgbmFtZSwgdHlwZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlKHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCkge1xuICAgIGNvbnN0IHsgVHlwZSB9ID0gc2hpbSxcbiAgICAgICAgICB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkodmFyaWFibGVEZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlKSxcbiAgICAgICAgICB2YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgbG9jYWxDb250ZXh0ID0gTG9jYWxDb250ZXh0LmZyb21GaWxlQ29udGV4dChmaWxlQ29udGV4dCksXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcodmFyaWFibGVOb2RlKSxcbiAgICAgICAgICBzdHJpbmcgPSB2YXJpYWJsZVN0cmluZywgIC8vL1xuICAgICAgICAgIG5vZGUgPSB2YXJpYWJsZU5vZGUsICAvLy9cbiAgICAgICAgICBuYW1lID0gdmFyaWFibGVOYW1lLCAgLy8vXG4gICAgICAgICAgdHlwZSA9IFR5cGUuZnJvbVR5cGVOb2RlKHR5cGVOb2RlLCBsb2NhbENvbnRleHQpLFxuICAgICAgICAgIHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKHN0cmluZywgbm9kZSwgbmFtZSwgdHlwZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cbn1cblxuZnVuY3Rpb24gdHlwZUZyb21KU09OKGpzb24sIGZpbGVDb250ZXh0KSB7XG4gIGxldCB7IHR5cGUgfSA9IGpzb247XG5cbiAgY29uc3QgeyBuYW1lIH0gPSB0eXBlLFxuICAgICAgICB0eXBlTmFtZSA9IG5hbWU7ICAvLy9cblxuICB0eXBlID0gZmlsZUNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKTtcblxuICByZXR1cm4gdHlwZTtcbn1cblxuZnVuY3Rpb24gdGVybVZhcmlhYmxlRnJvbVRlcm1Ob2RlKHRlcm1Ob2RlLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHRlcm1WYXJpYWJsZSA9IG51bGw7XG5cbiAgY29uc3QgdGVybVZhcmlhYmxlTm9kZSA9IHRlcm1WYXJpYWJsZU5vZGVRdWVyeSh0ZXJtTm9kZSk7XG5cbiAgaWYgKHRlcm1WYXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCB0ZXJtVmFyaWFibGVOYW1lID0gdmFyaWFibGVOYW1lRnJvbVZhcmlhYmxlTm9kZSh0ZXJtVmFyaWFibGVOb2RlKTtcblxuICAgIHRlcm1WYXJpYWJsZSA9IGxvY2FsQ29udGV4dC5maW5kVmFyaWFibGVCeVZhcmlhYmxlTmFtZSh0ZXJtVmFyaWFibGVOYW1lKTtcbiAgfVxuXG4gIHJldHVybiB0ZXJtVmFyaWFibGU7XG59Il0sIm5hbWVzIjpbIlZhcmlhYmxlIiwidHlwZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInZhcmlhYmxlTm9kZVF1ZXJ5IiwidGVybVZhcmlhYmxlTm9kZVF1ZXJ5Iiwic3RyaW5nIiwibm9kZSIsIm5hbWUiLCJ0eXBlIiwiZ2V0U3RyaW5nIiwiZ2V0Tm9kZSIsImdldE5hbWUiLCJnZXRUeXBlIiwic2V0VHlwZSIsIm1hdGNoTm9kZSIsIm5vZGVNYXRjaGVzIiwibWF0Y2giLCJtYXRjaE5hbWUiLCJuYW1lTWF0Y2hlcyIsInZlcmlmeSIsImxvY2FsQ29udGV4dCIsInZlcmlmaWVkIiwidmFyaWFibGVTdHJpbmciLCJ0cmFjZSIsInZhcmlhYmxlTm9kZSIsInZhcmlhYmxlTmFtZSIsInZhcmlhYmxlTmFtZUZyb21WYXJpYWJsZU5vZGUiLCJ2YXJpYWJsZSIsImZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOYW1lIiwiZGVidWciLCJ2ZXJpZnlUeXBlIiwiZmlsZUNvbnRleHQiLCJ0eXBlVmVyaWZpZWQiLCJvYmplY3RUeXBlIiwidHlwZU5hbWUiLCJmaW5kVHlwZUJ5VHlwZU5hbWUiLCJ2ZXJpZnlBdFRvcExldmVsIiwidmVyaWZpZWRBdFRvcExldmVsIiwidmFyaWFibGVQcmVzZW50IiwiaXNWYXJpYWJsZVByZXNlbnRCeVZhcmlhYmxlTmFtZSIsInVuaWZ5VGVybSIsInRlcm0iLCJzdWJzdGl0dXRpb25zIiwidGVybVVuaWZpZWQiLCJ0ZXJtU3RyaW5nIiwidGVybU5vZGUiLCJzdWJzdGl0dXRpb24iLCJmaW5kU3Vic3RpdHV0aW9uQnlWYXJpYWJsZU5vZGUiLCJ0ZXJtTm9kZU1hdGNoZXMiLCJtYXRjaFRlcm1Ob2RlIiwidGVybVZhcmlhYmxlIiwidGVybVZhcmlhYmxlRnJvbVRlcm1Ob2RlIiwidGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiZnJvbVRlcm5BbmRWYXJpYWJsZSIsImFkZFN1YnN0aXR1dGlvbiIsInRvSlNPTiIsInR5cGVKU09OIiwianNvbiIsImZyb21KU09OIiwibGV4ZXIiLCJnZXRMZXhlciIsInBhcnNlciIsImdldFBhcnNlciIsInZhcmlhYmxlTm9kZUZyb21WYXJpYWJsZVN0cmluZyIsInR5cGVGcm9tSlNPTiIsImZyb21WYXJpYWJsZU5vZGUiLCJub2RlQXNTdHJpbmciLCJmcm9tVmFyaWFibGVOb2RlQW5kVHlwZSIsImZyb21WYXJpYWJsZURlY2xhcmF0aW9uTm9kZSIsInZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlIiwiVHlwZSIsInNoaW0iLCJ0eXBlTm9kZSIsIkxvY2FsQ29udGV4dCIsImZyb21GaWxlQ29udGV4dCIsImZyb21UeXBlTm9kZSIsInRlcm1WYXJpYWJsZU5vZGUiLCJ0ZXJtVmFyaWFibGVOYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQWVxQkE7OzsyREFiSjs0REFDUTtzRUFDZTtxQkFFZDtvQkFDQztvQkFDaUI7b0JBQ0c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
255
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92YXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHNoaW0gZnJvbSBcIi4vc2hpbVwiO1xuaW1wb3J0IExvY2FsQ29udGV4dCBmcm9tIFwiLi9jb250ZXh0L2xvY2FsXCI7XG5pbXBvcnQgVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuL3N1YnN0aXR1dGlvbi90ZXJtRm9yVmFyaWFibGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBvYmplY3RUeXBlIH0gZnJvbSBcIi4vdHlwZVwiO1xuaW1wb3J0IHsgdmFyaWFibGVOYW1lRnJvbVZhcmlhYmxlTm9kZX0gZnJvbSBcIi4vdXRpbGl0aWVzL25hbWVcIjtcbmltcG9ydCB7IHZhcmlhYmxlTm9kZUZyb21WYXJpYWJsZVN0cmluZyB9IGZyb20gXCIuL3V0aWxpdGllcy9ub2RlXCI7XG5pbXBvcnQgbG9jYWwgZnJvbSBcIi4vY29udGV4dC9sb2NhbFwiO1xuXG5jb25zdCB0eXBlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3ZhcmlhYmxlRGVjbGFyYXRpb24vdHlwZVwiKSxcbiAgICAgIHZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3ZhcmlhYmxlRGVjbGFyYXRpb24vdmFyaWFibGVcIiksXG4gICAgICB0ZXJtVmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdGVybS92YXJpYWJsZVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmFyaWFibGUge1xuICBjb25zdHJ1Y3Rvcihsb2NhbENvbnRleHQsIHN0cmluZywgbm9kZSwgbmFtZSwgdHlwZSkge1xuICAgIHRoaXMubG9jYWxDb250ZXh0ID0gbG9jYWxDb250ZXh0OyAvLy9cbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgfVxuXG4gIGdldExvY2FsQ29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbENvbnRleHQ7XG4gIH1cblxuICBnZXRTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nO1xuICB9XG5cbiAgZ2V0Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgc2V0VHlwZSh0eXBlKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgfVxuXG4gIG1hdGNoTm9kZShub2RlKSB7XG4gICAgY29uc3Qgbm9kZU1hdGNoZXMgPSB0aGlzLm5vZGUubWF0Y2gobm9kZSk7XG5cbiAgICByZXR1cm4gbm9kZU1hdGNoZXM7XG4gIH1cblxuICBtYXRjaE5hbWUobmFtZSkge1xuICAgIGNvbnN0IG5hbWVNYXRjaGVzID0gKHRoaXMubmFtZSA9PT0gbmFtZSk7XG5cbiAgICByZXR1cm4gbmFtZU1hdGNoZXM7XG4gIH1cblxuICB2ZXJpZnkobG9jYWxDb250ZXh0KSB7XG4gICAgbGV0IHZlcmlmaWVkO1xuXG4gICAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dmFyaWFibGVTdHJpbmd9JyB2YXJpYWJsZS4uLmApO1xuXG4gICAgY29uc3QgdmFyaWFibGVOb2RlID0gdGhpcy5ub2RlLCAvLy9cbiAgICAgICAgICB2YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgdmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5hbWUodmFyaWFibGVOYW1lKTtcblxuICAgIGlmICh2YXJpYWJsZSA9PT0gbnVsbCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgJyR7dmFyaWFibGVTdHJpbmd9JyB2YXJpYWJsZSBpcyBub3QgcHJlc2VudC5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdHlwZSA9IHZhcmlhYmxlLmdldFR5cGUoKTtcblxuICAgICAgdGhpcy50eXBlID0gdHlwZTtcblxuICAgICAgdmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICh2ZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7dmFyaWFibGVTdHJpbmd9JyB2YXJpYWJsZS5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlUeXBlKGZpbGVDb250ZXh0KSB7XG4gICAgbGV0IHR5cGVWZXJpZmllZDtcblxuICAgIGlmICh0aGlzLnR5cGUgPT09IG9iamVjdFR5cGUpIHtcbiAgICAgIHR5cGVWZXJpZmllZCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHR5cGVOYW1lID0gdGhpcy50eXBlLmdldE5hbWUoKTtcblxuICAgICAgZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dHlwZU5hbWV9JyB0eXBlLi4uYCk7XG5cbiAgICAgIGNvbnN0IHR5cGUgPSBmaWxlQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gICAgICBpZiAodHlwZSA9PT0gbnVsbCkge1xuICAgICAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlICcke3R5cGVOYW1lfScgdHlwZSBpcyBtaXNzaW5nLmApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy50eXBlID0gdHlwZTsgLy8vXG5cbiAgICAgICAgdHlwZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVWZXJpZmllZCkge1xuICAgICAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3R5cGVOYW1lfScgdHlwZS5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5QXRUb3BMZXZlbChmaWxlQ29udGV4dCkge1xuICAgIGxldCB2ZXJpZmllZEF0VG9wTGV2ZWw7XG5cbiAgICBjb25zdCB2YXJpYWJsZVN0cmluZyA9IHRoaXMuc3RyaW5nOyAvLy9cblxuICAgIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUgYXQgdG9wIGxldmVsLi4uYCk7XG5cbiAgICBjb25zdCB2YXJpYWJsZU5vZGUgPSB0aGlzLm5vZGUsIC8vL1xuICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHZhcmlhYmxlTmFtZUZyb21WYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKSxcbiAgICAgICAgICB2YXJpYWJsZVByZXNlbnQgPSBmaWxlQ29udGV4dC5pc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSk7XG5cbiAgICBpZiAodmFyaWFibGVQcmVzZW50KSB7XG4gICAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUgaXMgYWxyZWFkeSBwcmVzZW50LmApO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0eXBlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeVR5cGUoZmlsZUNvbnRleHQpO1xuXG4gICAgICB2ZXJpZmllZEF0VG9wTGV2ZWwgPSB0eXBlVmVyaWZpZWQ7ICAvLy9cbiAgICB9XG5cbiAgICBpZiAodmVyaWZpZWRBdFRvcExldmVsKSB7XG4gICAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUgYXQgdG9wIGxldmVsLmApO1xuICAgIH1cblxuICAgIHJldHVybiB2ZXJpZmllZEF0VG9wTGV2ZWw7XG4gIH1cblxuICB1bmlmeVRlcm0odGVybSwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KSB7XG4gICAgbGV0IHRlcm1VbmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCB0ZXJtU3RyaW5nID0gdGVybS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICB2YXJpYWJsZVN0cmluZyA9IHRoaXMuc3RyaW5nOyAvLy9cblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVW5pZnlpbmcgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIHdpdGggdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUuLi5gKTtcblxuICAgIGNvbnN0IHRlcm1Ob2RlID0gdGVybS5nZXROb2RlKCksXG4gICAgICAgICAgdmFyaWFibGVOb2RlID0gdGhpcy5ub2RlLCAvLy9cbiAgICAgICAgICBzdWJzdGl0dXRpb24gPSBzdWJzdGl0dXRpb25zLmZpbmRTdWJzdGl0dXRpb25CeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpO1xuXG4gICAgaWYgKHN1YnN0aXR1dGlvbiAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdGVybU5vZGVNYXRjaGVzID0gc3Vic3RpdHV0aW9uLm1hdGNoVGVybU5vZGUodGVybU5vZGUpO1xuXG4gICAgICBpZiAodGVybU5vZGVNYXRjaGVzKSB7XG4gICAgICAgIHRlcm1VbmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdmFyaWFibGUgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgICB0ZXJtVmFyaWFibGUgPSB0ZXJtVmFyaWFibGVGcm9tVGVybU5vZGUodGVybU5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIGlmICh0ZXJtVmFyaWFibGUgPT09IHZhcmlhYmxlKSB7XG4gICAgICAgIHRlcm1VbmlmaWVkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiA9IFRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbi5mcm9tVGVybkFuZFZhcmlhYmxlKHRlcm0sIHZhcmlhYmxlLCBsb2NhbENvbnRleHQpLFxuICAgICAgICAgICAgICBzdWJzdGl0dXRpb24gPSB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb247ICAvLy9cblxuICAgICAgICBzdWJzdGl0dXRpb25zLmFkZFN1YnN0aXR1dGlvbihzdWJzdGl0dXRpb24sIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgdGVybVVuaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0ZXJtVW5pZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LnRyYWNlKGAuLi51bmlmaWVkIHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSB3aXRoIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLmApO1xuICAgIH1cblxuICAgIHJldHVybiB0ZXJtVW5pZmllZDtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCB0eXBlSlNPTiA9IHRoaXMudHlwZS50b0pTT04oKSxcbiAgICAgICAgICBzdHJpbmcgPSB0aGlzLnN0cmluZyxcbiAgICAgICAgICB0eXBlID0gdHlwZUpTT04sICAvLy9cbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAgc3RyaW5nLFxuICAgICAgICAgICAgdHlwZVxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBmaWxlQ29udGV4dCkge1xuICAgIGNvbnN0IHsgc3RyaW5nIH0gPSBqc29uLFxuICAgICAgICAgIGxleGVyICA9IGZpbGVDb250ZXh0LmdldExleGVyKCksXG4gICAgICAgICAgcGFyc2VyID0gZmlsZUNvbnRleHQuZ2V0UGFyc2VyKCksXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSBzdHJpbmcsICAvLy9cbiAgICAgICAgICB2YXJpYWJsZU5vZGUgPSB2YXJpYWJsZU5vZGVGcm9tVmFyaWFibGVTdHJpbmcodmFyaWFibGVTdHJpbmcsIGxleGVyLCBwYXJzZXIpLFxuICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHZhcmlhYmxlTmFtZUZyb21WYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKSxcbiAgICAgICAgICBsb2NhbENvbnRleHQgPSBMb2NhbENvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KSxcbiAgICAgICAgICBub2RlID0gdmFyaWFibGVOb2RlLFxuICAgICAgICAgIG5hbWUgPSB2YXJpYWJsZU5hbWUsICAvLy9cbiAgICAgICAgICB0eXBlID0gdHlwZUZyb21KU09OKGpzb24sIGZpbGVDb250ZXh0KSxcbiAgICAgICAgICB2YXJpYWJsZSA9IG5ldyBWYXJpYWJsZShsb2NhbENvbnRleHQsIHN0cmluZywgbm9kZSwgbmFtZSwgdHlwZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUsIGxvY2FsQ29udGV4dCkge1xuICAgIGxldCB2YXJpYWJsZSA9IG51bGw7XG5cbiAgICBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBub2RlID0gdmFyaWFibGVOb2RlLCAgLy8vXG4gICAgICAgICAgICB2YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgICBzdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpLFxuICAgICAgICAgICAgbmFtZSA9IHZhcmlhYmxlTmFtZSwgIC8vL1xuICAgICAgICAgICAgdHlwZSA9IG51bGw7XG5cbiAgICAgIHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKGxvY2FsQ29udGV4dCwgc3RyaW5nLCBub2RlLCBuYW1lLCB0eXBlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlTm9kZUFuZFR5cGUodmFyaWFibGVOb2RlLCB0eXBlLCBsb2NhbENvbnRleHQpIHtcbiAgICBjb25zdCBub2RlID0gdmFyaWFibGVOb2RlLCAgLy8vXG4gICAgICAgICAgdmFyaWFibGVOYW1lID0gdmFyaWFibGVOYW1lRnJvbVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIHN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobm9kZSksXG4gICAgICAgICAgbmFtZSA9IHZhcmlhYmxlTmFtZSwgIC8vL1xuICAgICAgICAgIHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKGxvY2FsQ29udGV4dCwgc3RyaW5nLCBub2RlLCBuYW1lLCB0eXBlKTtcblxuICAgIHJldHVybiB2YXJpYWJsZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVmFyaWFibGVEZWNsYXJhdGlvbk5vZGUodmFyaWFibGVEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KSB7XG4gICAgY29uc3QgeyBUeXBlIH0gPSBzaGltLFxuICAgICAgICAgIHR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeSh2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSksXG4gICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkodmFyaWFibGVEZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHZhcmlhYmxlTmFtZUZyb21WYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKSxcbiAgICAgICAgICBsb2NhbENvbnRleHQgPSBMb2NhbENvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KSxcbiAgICAgICAgICB2YXJpYWJsZVN0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVBc1N0cmluZyh2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIHN0cmluZyA9IHZhcmlhYmxlU3RyaW5nLCAgLy8vXG4gICAgICAgICAgbm9kZSA9IHZhcmlhYmxlTm9kZSwgIC8vL1xuICAgICAgICAgIG5hbWUgPSB2YXJpYWJsZU5hbWUsICAvLy9cbiAgICAgICAgICB0eXBlID0gVHlwZS5mcm9tVHlwZU5vZGUodHlwZU5vZGUsIGxvY2FsQ29udGV4dCksXG4gICAgICAgICAgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUobG9jYWxDb250ZXh0LCBzdHJpbmcsIG5vZGUsIG5hbWUsIHR5cGUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG59XG5cbmZ1bmN0aW9uIHR5cGVGcm9tSlNPTihqc29uLCBmaWxlQ29udGV4dCkge1xuICBsZXQgeyB0eXBlIH0gPSBqc29uO1xuXG4gIGNvbnN0IHsgbmFtZSB9ID0gdHlwZSxcbiAgICAgICAgdHlwZU5hbWUgPSBuYW1lOyAgLy8vXG5cbiAgdHlwZSA9IGZpbGVDb250ZXh0LmZpbmRUeXBlQnlUeXBlTmFtZSh0eXBlTmFtZSk7XG5cbiAgcmV0dXJuIHR5cGU7XG59XG5cbmZ1bmN0aW9uIHRlcm1WYXJpYWJsZUZyb21UZXJtTm9kZSh0ZXJtTm9kZSwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCB0ZXJtVmFyaWFibGUgPSBudWxsO1xuXG4gIGNvbnN0IHRlcm1WYXJpYWJsZU5vZGUgPSB0ZXJtVmFyaWFibGVOb2RlUXVlcnkodGVybU5vZGUpO1xuXG4gIGlmICh0ZXJtVmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdGVybVZhcmlhYmxlTmFtZSA9IHZhcmlhYmxlTmFtZUZyb21WYXJpYWJsZU5vZGUodGVybVZhcmlhYmxlTm9kZSk7XG5cbiAgICB0ZXJtVmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5hbWUodGVybVZhcmlhYmxlTmFtZSk7XG4gIH1cblxuICByZXR1cm4gdGVybVZhcmlhYmxlO1xufSJdLCJuYW1lcyI6WyJWYXJpYWJsZSIsInR5cGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ2YXJpYWJsZU5vZGVRdWVyeSIsInRlcm1WYXJpYWJsZU5vZGVRdWVyeSIsImxvY2FsQ29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJuYW1lIiwidHlwZSIsImdldExvY2FsQ29udGV4dCIsImdldFN0cmluZyIsImdldE5vZGUiLCJnZXROYW1lIiwiZ2V0VHlwZSIsInNldFR5cGUiLCJtYXRjaE5vZGUiLCJub2RlTWF0Y2hlcyIsIm1hdGNoIiwibWF0Y2hOYW1lIiwibmFtZU1hdGNoZXMiLCJ2ZXJpZnkiLCJ2ZXJpZmllZCIsInZhcmlhYmxlU3RyaW5nIiwidHJhY2UiLCJ2YXJpYWJsZU5vZGUiLCJ2YXJpYWJsZU5hbWUiLCJ2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlIiwidmFyaWFibGUiLCJmaW5kVmFyaWFibGVCeVZhcmlhYmxlTmFtZSIsImRlYnVnIiwidmVyaWZ5VHlwZSIsImZpbGVDb250ZXh0IiwidHlwZVZlcmlmaWVkIiwib2JqZWN0VHlwZSIsInR5cGVOYW1lIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwidmVyaWZ5QXRUb3BMZXZlbCIsInZlcmlmaWVkQXRUb3BMZXZlbCIsInZhcmlhYmxlUHJlc2VudCIsImlzVmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5hbWUiLCJ1bmlmeVRlcm0iLCJ0ZXJtIiwic3Vic3RpdHV0aW9ucyIsInRlcm1VbmlmaWVkIiwidGVybVN0cmluZyIsInRlcm1Ob2RlIiwic3Vic3RpdHV0aW9uIiwiZmluZFN1YnN0aXR1dGlvbkJ5VmFyaWFibGVOb2RlIiwidGVybU5vZGVNYXRjaGVzIiwibWF0Y2hUZXJtTm9kZSIsInRlcm1WYXJpYWJsZSIsInRlcm1WYXJpYWJsZUZyb21UZXJtTm9kZSIsInRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiIsIlRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiIsImZyb21UZXJuQW5kVmFyaWFibGUiLCJhZGRTdWJzdGl0dXRpb24iLCJ0b0pTT04iLCJ0eXBlSlNPTiIsImpzb24iLCJmcm9tSlNPTiIsImxleGVyIiwiZ2V0TGV4ZXIiLCJwYXJzZXIiLCJnZXRQYXJzZXIiLCJ2YXJpYWJsZU5vZGVGcm9tVmFyaWFibGVTdHJpbmciLCJMb2NhbENvbnRleHQiLCJmcm9tRmlsZUNvbnRleHQiLCJ0eXBlRnJvbUpTT04iLCJmcm9tVmFyaWFibGVOb2RlIiwibm9kZUFzU3RyaW5nIiwiZnJvbVZhcmlhYmxlTm9kZUFuZFR5cGUiLCJmcm9tVmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJ2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSIsIlR5cGUiLCJzaGltIiwidHlwZU5vZGUiLCJmcm9tVHlwZU5vZGUiLCJ0ZXJtVmFyaWFibGVOb2RlIiwidGVybVZhcmlhYmxlTmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFnQnFCQTs7OzJEQWRKOzREQUNRO3NFQUNlO3FCQUVkO29CQUNDO29CQUNpQjtvQkFDRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUcvQyxJQUFNQyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsOEJBQzFCQyxvQkFBb0JELElBQUFBLGdCQUFTLEVBQUMsa0NBQzlCRSx3QkFBd0JGLElBQUFBLGdCQUFTLEVBQUM7QUFFekIsSUFBQSxBQUFNRix5QkFBTjthQUFNQSxTQUNQSyxZQUFZLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxJQUFJLEVBQUVDLElBQUk7Z0NBRC9CVDtRQUVqQixJQUFJLENBQUNLLFlBQVksR0FBR0EsY0FBYyxHQUFHO1FBQ3JDLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTs7a0JBTktUOztZQVNuQlUsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxZQUFZO1lBQzFCOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxNQUFNO1lBQ3BCOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxJQUFJO1lBQ2xCOzs7WUFFQU0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDTCxJQUFJO1lBQ2xCOzs7WUFF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
|
|
@@ -126,7 +126,7 @@ _define_property(IntrinsicLevelVerifier, "maps", [
|
|
|
126
126
|
{
|
|
127
127
|
nodeQuery: termNodeQuery,
|
|
128
128
|
verify: function(termNode, localContext) {
|
|
129
|
-
var
|
|
129
|
+
var Term = _shim.default.Term, term = Term.fromTermNode(termNode, localContext), termVerified = term.verify(localContext, function() {
|
|
130
130
|
var verifiedAhead = true;
|
|
131
131
|
return verifiedAhead;
|
|
132
132
|
});
|
|
@@ -137,4 +137,4 @@ _define_property(IntrinsicLevelVerifier, "maps", [
|
|
|
137
137
|
var intrinsicLevelVerifier = new IntrinsicLevelVerifier();
|
|
138
138
|
var _default = intrinsicLevelVerifier;
|
|
139
139
|
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci9pbnRyaW5zaWNMZXZlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHNoaW0gZnJvbSBcIi4uL3NoaW1cIjtcbmltcG9ydCBWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXJcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm0hXCIpO1xuXG5jbGFzcyBJbnRyaW5zaWNMZXZlbFZlcmlmaWVyIGV4dGVuZHMgVmVyaWZpZXIge1xuICB2ZXJpZnkobm9kZSwgbG9jYWxDb250ZXh0KSB7XG4gICAgbGV0IHZlcmlmaWVkO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbm9kZSwgLy8vXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICB2ZXJpZmllZCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAgLy8vXG5cbiAgICByZXR1cm4gdmVyaWZpZWQ7XG4gIH1cblxuICBzdGF0aWMgbWFwcyA9IFtcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IHRlcm1Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6ICh0ZXJtTm9kZSwgbG9jYWxDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgVGVybSB9ID0gc2hpbSxcbiAgICAgICAgICAgICAgdGVybSA9IFRlcm0uZnJvbVRlcm1Ob2RlKHRlcm1Ob2RlLCBsb2NhbENvbnRleHQpLFxuICAgICAgICAgICAgICB0ZXJtVmVyaWZpZWQgPSB0ZXJtLnZlcmlmeShsb2NhbENvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGVybVZlcmlmaWVkO1xuICAgICAgfVxuICAgIH1cbiAgXTtcbn1cblxuY29uc3QgaW50cmluc2ljTGV2ZWxWZXJpZmllciA9IG5ldyBJbnRyaW5zaWNMZXZlbFZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IGludHJpbnNpY0xldmVsVmVyaWZpZXI7XG4iXSwibmFtZXMiOlsidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIkludHJpbnNpY0xldmVsVmVyaWZpZXIiLCJ2ZXJpZnkiLCJub2RlIiwibG9jYWxDb250ZXh0IiwidmVyaWZpZWQiLCJub25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsIlZlcmlmaWVyIiwibWFwcyIsInRlcm1Ob2RlIiwiVGVybSIsInNoaW0iLCJ0ZXJtIiwiZnJvbVRlcm1Ob2RlIiwidGVybVZlcmlmaWVkIiwidmVyaWZpZWRBaGVhZCIsImludHJpbnNpY0xldmVsVmVyaWZpZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQXlDQTs7O2VBQUE7OzsyREF2Q2lCOytEQUNJO3FCQUVLOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUxQixJQUFNQSxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUM7QUFFaEMsSUFBQSxBQUFNQyx1Q0FBTjtjQUFNQTthQUFBQTtnQ0FBQUE7aUNBQUFBOztrQkFBQUE7O1lBQ0pDLEtBQUFBO21CQUFBQSxTQUFBQSxPQUFPQyxJQUFJLEVBQUVDLFlBQVk7Z0JBQ3ZCLElBQUlDO2dCQUVKLElBQU1DLGtCQUFrQkgsTUFDbEJJLDBCQUEwQixJQUFJLENBQUNDLHFCQUFxQixDQUFDRixpQkFBaUJGO2dCQUU1RUMsV0FBV0UseUJBQTBCLEdBQUc7Z0JBRXhDLE9BQU9GO1lBQ1Q7OztXQVZJSjtFQUErQlEsaUJBQVE7QUFZM0MsaUJBWklSLHdCQVlHUyxRQUFPO0lBQ1o7UUFDRVYsV0FBV0Q7UUFDWEcsUUFBUSxTQUFDUyxVQUFVUDtZQUNqQixJQUFNLEFBQUVRLE9BQVNDLGFBQUksQ0FBYkQsTUFDRkUsT0FBT0YsS0FBS0csWUFBWSxDQUFDSixVQUFVUCxlQUNuQ1ksZUFBZUYsS0FBS1osTUFBTSxDQUFDRSxjQUFjO2dCQUN2QyxJQUFNYSxnQkFBZ0I7Z0JBRXRCLE9BQU9BO1lBQ1Q7WUFFTixPQUFPRDtRQUNUO0lBQ0Y7Q0FDRDtBQUdILElBQU1FLHlCQUF5QixJQUFJakI7SUFFbkMsV0FBZWlCIn0=
|
|
@@ -133,7 +133,7 @@ _define_property(MetaLevelVerifier, "maps", [
|
|
|
133
133
|
{
|
|
134
134
|
nodeQuery: termNodeQuery,
|
|
135
135
|
verify: function(termNode, assignments, stated, localContext) {
|
|
136
|
-
var
|
|
136
|
+
var Term = _shim.default.Term, term = Term.fromTermNode(termNode, localContext), termVerified = term.verify(localContext, function() {
|
|
137
137
|
var verifiedAhead = true;
|
|
138
138
|
return verifiedAhead;
|
|
139
139
|
});
|
|
@@ -144,4 +144,4 @@ _define_property(MetaLevelVerifier, "maps", [
|
|
|
144
144
|
var metaLevelVerifier = new MetaLevelVerifier();
|
|
145
145
|
var _default = metaLevelVerifier;
|
|
146
146
|
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci9tZXRhTGV2ZWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBzaGltIGZyb20gXCIuLi9zaGltXCI7XG5pbXBvcnQgVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQhXCIpO1xuXG5jbGFzcyBNZXRhTGV2ZWxWZXJpZmllciBleHRlbmRzIFZlcmlmaWVyIHtcbiAgdmVyaWZ5KG5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICAgIGxldCB2ZXJpZmllZDtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICB2ZXJpZmllZCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAgLy8vXG5cbiAgICByZXR1cm4gdmVyaWZpZWQ7XG4gIH1cblxuICBzdGF0aWMgbWFwcyA9IFtcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IHN0YXRlbWVudE5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCB7IFN0YXRlbWVudCB9ID0gc2hpbSxcbiAgICAgICAgICAgICAgc3RhdGVtZW50ID0gU3RhdGVtZW50LmZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUsIGxvY2FsQ29udGV4dCksXG4gICAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkID0gc3RhdGVtZW50LnZlcmlmeShhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogdGVybU5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHRlcm1Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpID0+
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci9tZXRhTGV2ZWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBzaGltIGZyb20gXCIuLi9zaGltXCI7XG5pbXBvcnQgVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQhXCIpO1xuXG5jbGFzcyBNZXRhTGV2ZWxWZXJpZmllciBleHRlbmRzIFZlcmlmaWVyIHtcbiAgdmVyaWZ5KG5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICAgIGxldCB2ZXJpZmllZDtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgIGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXMsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICB2ZXJpZmllZCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAgLy8vXG5cbiAgICByZXR1cm4gdmVyaWZpZWQ7XG4gIH1cblxuICBzdGF0aWMgbWFwcyA9IFtcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IHN0YXRlbWVudE5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCB7IFN0YXRlbWVudCB9ID0gc2hpbSxcbiAgICAgICAgICAgICAgc3RhdGVtZW50ID0gU3RhdGVtZW50LmZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUsIGxvY2FsQ29udGV4dCksXG4gICAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkID0gc3RhdGVtZW50LnZlcmlmeShhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogdGVybU5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHRlcm1Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgeyBUZXJtIH0gPSBzaGltLFxuICAgICAgICAgICAgICB0ZXJtID0gVGVybS5mcm9tVGVybU5vZGUodGVybU5vZGUsIGxvY2FsQ29udGV4dCksXG4gICAgICAgICAgICAgIHRlcm1WZXJpZmllZCA9IHRlcm0udmVyaWZ5KGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0ZXJtVmVyaWZpZWQ7XG4gICAgICB9XG4gICAgfVxuICBdO1xufVxuXG5jb25zdCBtZXRhTGV2ZWxWZXJpZmllciA9IG5ldyBNZXRhTGV2ZWxWZXJpZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCBtZXRhTGV2ZWxWZXJpZmllcjtcbiJdLCJuYW1lcyI6WyJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5IiwiTWV0YUxldmVsVmVyaWZpZXIiLCJ2ZXJpZnkiLCJub2RlIiwiYXNzaWdubWVudHMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJ2ZXJpZmllZCIsIm5vblRlcm1pbmFsTm9kZSIsImNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlDaGlsZE5vZGVzIiwiVmVyaWZpZXIiLCJtYXBzIiwic3RhdGVtZW50Tm9kZSIsIlN0YXRlbWVudCIsInNoaW0iLCJzdGF0ZW1lbnQiLCJmcm9tU3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudFZlcmlmaWVkIiwidGVybU5vZGUiLCJUZXJtIiwidGVybSIsImZyb21UZXJtTm9kZSIsInRlcm1WZXJpZmllZCIsInZlcmlmaWVkQWhlYWQiLCJtZXRhTGV2ZWxWZXJpZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBcURBOzs7ZUFBQTs7OzJEQW5EaUI7K0RBQ0k7cUJBRUs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFCLElBQU1BLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxXQUMxQkMscUJBQXFCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRXJDLElBQUEsQUFBTUUsa0NBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO2lDQUFBQTs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsT0FBT0MsSUFBSSxFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtnQkFDNUMsSUFBSUM7Z0JBRUosSUFBTUMsa0JBQWtCTCxNQUNsQk0sYUFBYUQsZ0JBQWdCRSxhQUFhLElBQzFDQywwQkFBMEIsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQ0gsWUFBWUwsYUFBYUMsUUFBUUM7Z0JBRXZGQyxXQUFXSSx5QkFBMEIsR0FBRztnQkFFeEMsT0FBT0o7WUFDVDs7O1dBWElOO0VBQTBCWSxpQkFBUTtBQWF0QyxpQkFiSVosbUJBYUdhLFFBQU87SUFDWjtRQUNFZixXQUFXQztRQUNYRSxRQUFRLFNBQUNhLGVBQWVYLGFBQWFDLFFBQVFDO1lBQzNDLElBQU0sQUFBRVUsWUFBY0MsYUFBSSxDQUFsQkQsV0FDRkUsWUFBWUYsVUFBVUcsaUJBQWlCLENBQUNKLGVBQWVULGVBQ3ZEYyxvQkFBb0JGLFVBQVVoQixNQUFNLENBQUNFLGFBQWFDLFFBQVFDO1lBRWhFLE9BQU9jO1FBQ1Q7SUFDRjtJQUNBO1FBQ0VyQixXQUFXRDtRQUNYSSxRQUFRLFNBQUNtQixVQUFVakIsYUFBYUMsUUFBUUM7WUFDdEMsSUFBTSxBQUFFZ0IsT0FBU0wsYUFBSSxDQUFiSyxNQUNGQyxPQUFPRCxLQUFLRSxZQUFZLENBQUNILFVBQVVmLGVBQ25DbUIsZUFBZUYsS0FBS3JCLE1BQU0sQ0FBQ0ksY0FBYztnQkFDdkMsSUFBTW9CLGdCQUFnQjtnQkFFdEIsT0FBT0E7WUFDVDtZQUVOLE9BQU9EO1FBQ1Q7SUFDRjtDQUNEO0FBR0gsSUFBTUUsb0JBQW9CLElBQUkxQjtJQUU5QixXQUFlMEIifQ==
|
|
@@ -2,12 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return verifySubproofAssertion;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
5
|
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
12
6
|
function _interop_require_default(obj) {
|
|
13
7
|
return obj && obj.__esModule ? obj : {
|
|
@@ -18,47 +12,5 @@ var verifySubproofAssertionFunctions = [
|
|
|
18
12
|
verifyDerivedSubproofAssertion,
|
|
19
13
|
verifyStatedSubproofAssertion
|
|
20
14
|
];
|
|
21
|
-
function verifySubproofAssertion(subproofAssertionNode, assignments, stated, localContext) {
|
|
22
|
-
var subproofAssertionVerified = false;
|
|
23
|
-
var subproofAssertionString = localContext.nodeAsString(subproofAssertionNode);
|
|
24
|
-
assignments = null; ///
|
|
25
|
-
stated = true; ///
|
|
26
|
-
localContext.trace("Verifying the '".concat(subproofAssertionString, "' subproof assertion..."), subproofAssertionNode);
|
|
27
|
-
var verified = _metaLevel.default.verify(subproofAssertionNode, assignments, stated, localContext);
|
|
28
|
-
if (verified) {
|
|
29
|
-
subproofAssertionVerified = verifySubproofAssertionFunctions.some(function(verifySubproofAssertionFunction) {
|
|
30
|
-
var subproofAssertionVerified = verifySubproofAssertionFunction(subproofAssertionNode, assignments, stated, localContext);
|
|
31
|
-
if (subproofAssertionVerified) {
|
|
32
|
-
return true;
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
if (subproofAssertionVerified) {
|
|
37
|
-
localContext.debug("...verified the '".concat(subproofAssertionString, "' subproof assertion."), subproofAssertionNode);
|
|
38
|
-
}
|
|
39
|
-
return subproofAssertionVerified;
|
|
40
|
-
}
|
|
41
|
-
function verifyDerivedSubproofAssertion(subproofAssertionNode, assignments, stated, localContext) {
|
|
42
|
-
var derivedSubproofAssertionVerified;
|
|
43
|
-
if (!stated) {
|
|
44
|
-
var subproofAssertionString = localContext.nodeAsString(subproofAssertionNode);
|
|
45
|
-
localContext.trace("Verifying the '".concat(subproofAssertionString, "' derived subproof assertion..."), subproofAssertionNode);
|
|
46
|
-
derivedSubproofAssertionVerified = false;
|
|
47
|
-
localContext.debug("The '".concat(subproofAssertionString, "' derived subproof assertion cannot be verified."), subproofAssertionNode);
|
|
48
|
-
}
|
|
49
|
-
return derivedSubproofAssertionVerified;
|
|
50
|
-
}
|
|
51
|
-
function verifyStatedSubproofAssertion(subproofAssertionNode, assignments, stated, localContext) {
|
|
52
|
-
var statedSubproofAssertionVerified;
|
|
53
|
-
if (stated) {
|
|
54
|
-
var subproofAssertionString = localContext.nodeAsString(subproofAssertionNode);
|
|
55
|
-
localContext.trace("Verifying the '".concat(subproofAssertionString, "' stated subproof assertion..."), subproofAssertionNode);
|
|
56
|
-
statedSubproofAssertionVerified = true;
|
|
57
|
-
if (statedSubproofAssertionVerified) {
|
|
58
|
-
localContext.debug("...verified the '".concat(subproofAssertionString, "' stated subproof assertion."), subproofAssertionNode);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return statedSubproofAssertionVerified;
|
|
62
|
-
}
|
|
63
15
|
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL3N1YnByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWV0YUxldmVsVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL21ldGFMZXZlbFwiO1xuXG5jb25zdCB2ZXJpZnlTdWJwcm9vZkFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZFN1YnByb29mQXNzZXJ0aW9uLFxuICB2ZXJpZnlTdGF0ZWRTdWJwcm9vZkFzc2VydGlvblxuXTtcblxuIl0sIm5hbWVzIjpbInZlcmlmeVN1YnByb29mQXNzZXJ0aW9uRnVuY3Rpb25zIiwidmVyaWZ5RGVyaXZlZFN1YnByb29mQXNzZXJ0aW9uIiwidmVyaWZ5U3RhdGVkU3VicHJvb2ZBc3NlcnRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7O2dFQUU4Qjs7Ozs7O0FBRTlCLElBQU1BLG1DQUFtQztJQUN2Q0M7SUFDQUM7Q0FDRCJ9
|
package/package.json
CHANGED
|
@@ -3,34 +3,97 @@
|
|
|
3
3
|
import shim from "../shim";
|
|
4
4
|
import LocalContext from "../context/local";
|
|
5
5
|
import metaLevelUnifier from "../unifier/metaLevel";
|
|
6
|
+
import metaLevelVerifier from "../verifier/metaLevel";
|
|
6
7
|
|
|
7
8
|
import { front, last, match } from "../utilities/array";
|
|
8
9
|
import { nodeQuery, nodesQuery } from "../utilities/query";
|
|
9
10
|
|
|
10
|
-
const
|
|
11
|
-
statementNodesQuery = nodesQuery("/subproofAssertion/statement"),
|
|
11
|
+
const statementNodesQuery = nodesQuery("/subproofAssertion/statement"),
|
|
12
12
|
subproofAssertionNodeQuery = nodeQuery("/statement/subproofAssertion");
|
|
13
13
|
|
|
14
14
|
export default class SubproofAssertion {
|
|
15
|
-
constructor(
|
|
16
|
-
this.fileContext = fileContext;
|
|
15
|
+
constructor(string, node, statements) {
|
|
17
16
|
this.string = string;
|
|
17
|
+
this.node = node;
|
|
18
18
|
this.statements = statements;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
getFileContext() {
|
|
22
|
-
return this.fileContext;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
21
|
getString() {
|
|
26
22
|
return this.string;
|
|
27
23
|
}
|
|
28
24
|
|
|
25
|
+
getNode() {
|
|
26
|
+
return this.node;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
29
|
getStatements() {
|
|
30
30
|
return this.statements;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
verify(assignments, stated, localContext) {
|
|
34
|
+
let verified;
|
|
35
|
+
|
|
36
|
+
const subproofAssertionString = this.string; ///
|
|
37
|
+
|
|
38
|
+
localContext.trace(`Verifying the '${subproofAssertionString}' subproof assertion...`);
|
|
39
|
+
|
|
40
|
+
let verifiedWhenStated = false,
|
|
41
|
+
verifiedWhenDerived = false;
|
|
42
|
+
|
|
43
|
+
if (stated) {
|
|
44
|
+
verifiedWhenStated = this.verifyWhenStated(localContext);
|
|
45
|
+
} else {
|
|
46
|
+
verifiedWhenDerived = this.verifyWhenDerived(localContext);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
if (verifiedWhenStated || verifiedWhenDerived) {
|
|
50
|
+
assignments = null; ///
|
|
51
|
+
|
|
52
|
+
stated = true; ///
|
|
53
|
+
|
|
54
|
+
const subproofAssertionNode = this.node; ///
|
|
55
|
+
|
|
56
|
+
verified = metaLevelVerifier.verify(subproofAssertionNode, assignments, stated, localContext);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
if (verified) {
|
|
60
|
+
localContext.debug(`...verified the '${subproofAssertionString}' subproof assertion.`);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return verified;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
verifyWhenStated(localContext) {
|
|
67
|
+
let verifiedWhenStated;
|
|
68
|
+
|
|
69
|
+
const subproofAssertionString = this.string; ///
|
|
70
|
+
|
|
71
|
+
localContext.trace(`Verifying the '${subproofAssertionString}' stated subproof assertion...`);
|
|
72
|
+
|
|
73
|
+
verifiedWhenStated = true;
|
|
74
|
+
|
|
75
|
+
if (verifiedWhenStated) {
|
|
76
|
+
localContext.debug(`...verified the '${subproofAssertionString}' stated subproof assertion.`);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
return verifiedWhenStated;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
verifyWhenDerived(localContext) {
|
|
83
|
+
let derivedSubproofAssertionVerified;
|
|
84
|
+
|
|
85
|
+
const subproofAssertionString = this.string; ///
|
|
86
|
+
|
|
87
|
+
localContext.trace(`Verifying the '${subproofAssertionString}' derived subproof assertion...`);
|
|
88
|
+
|
|
89
|
+
derivedSubproofAssertionVerified = false;
|
|
90
|
+
|
|
91
|
+
localContext.debug(`The '${subproofAssertionString}' derived subproof assertion cannot be verified.`);
|
|
92
|
+
|
|
93
|
+
return derivedSubproofAssertionVerified;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
unifySubproof(subproof, substitutions, fileContext, localContext) {
|
|
34
97
|
let subproofUnified;
|
|
35
98
|
|
|
36
99
|
const subproofString = subproof.getString(),
|
|
@@ -44,7 +107,7 @@ export default class SubproofAssertion {
|
|
|
44
107
|
subproofStatementNode = subproofStatement.getNode(),
|
|
45
108
|
nodeA = statementNode, ///
|
|
46
109
|
nodeB = subproofStatementNode, ///
|
|
47
|
-
fileContextA =
|
|
110
|
+
fileContextA = fileContext, ///
|
|
48
111
|
localContextA = LocalContext.fromFileContext(fileContextA),
|
|
49
112
|
localContextB = localContext, ///
|
|
50
113
|
unified = metaLevelUnifier.unify(nodeA, nodeB, substitutions, localContextA, localContextB);
|
|
@@ -61,59 +124,42 @@ export default class SubproofAssertion {
|
|
|
61
124
|
return subproofUnified;
|
|
62
125
|
}
|
|
63
126
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const statementString = statement.getString();
|
|
67
|
-
|
|
68
|
-
return statementString;
|
|
69
|
-
}),
|
|
70
|
-
statements = statementStings, ///
|
|
71
|
-
json = {
|
|
72
|
-
statements
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
return json;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
static fromJSON(json, fileContext) {
|
|
79
|
-
let { statements } = json;
|
|
127
|
+
static fromStatement(statement, fileContext) {
|
|
128
|
+
let subproofAssertion = null;
|
|
80
129
|
|
|
81
|
-
const
|
|
130
|
+
const statementNode = statement.getNode(),
|
|
131
|
+
subproofAssertionNode = subproofAssertionNodeQuery(statementNode);
|
|
82
132
|
|
|
83
|
-
|
|
84
|
-
const
|
|
85
|
-
|
|
133
|
+
if (subproofAssertionNode !== null) {
|
|
134
|
+
const { Statement } = shim,
|
|
135
|
+
statementNodes = statementNodesQuery(subproofAssertionNode),
|
|
136
|
+
statementString = statement.getString(),
|
|
137
|
+
localContext = LocalContext.fromFileContext(fileContext),
|
|
138
|
+
statements = statementNodes.map((statementNode) => {
|
|
139
|
+
const statement = Statement.fromStatementNode(statementNode, localContext);
|
|
86
140
|
|
|
87
|
-
|
|
88
|
-
|
|
141
|
+
return statement;
|
|
142
|
+
}),
|
|
143
|
+
node = subproofAssertionNode, ///
|
|
144
|
+
string = statementString; ///
|
|
89
145
|
|
|
90
|
-
|
|
91
|
-
|
|
146
|
+
subproofAssertion = new SubproofAssertion(string, node, statements);
|
|
147
|
+
}
|
|
92
148
|
|
|
93
149
|
return subproofAssertion;
|
|
94
150
|
}
|
|
95
151
|
|
|
96
|
-
static
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
subproofAssertionNode = subproofAssertionNodeQuery(statementNode);
|
|
102
|
-
|
|
103
|
-
if (subproofAssertionNode !== null) {
|
|
104
|
-
const { Statement } = shim,
|
|
105
|
-
localContext = LocalContext.fromFileContext(fileContext),
|
|
106
|
-
statementNodes = statementNodesQuery(subproofAssertionNode),
|
|
107
|
-
statements = statementNodes.map((statementNode) => {
|
|
108
|
-
const statement = Statement.fromStatementNode(statementNode, localContext);
|
|
109
|
-
|
|
110
|
-
return statement;
|
|
111
|
-
}),
|
|
112
|
-
string = stringFromStatements(statements);
|
|
152
|
+
static fromSubproofAssertionNode(subproofAssertionNode, localContext) {
|
|
153
|
+
const { Statement } = shim,
|
|
154
|
+
statementNodes = statementNodesQuery(subproofAssertionNode),
|
|
155
|
+
statements = statementNodes.map((statementNode) => {
|
|
156
|
+
const statement = Statement.fromStatementNode(statementNode, localContext);
|
|
113
157
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
158
|
+
return statement;
|
|
159
|
+
}),
|
|
160
|
+
node = subproofAssertionNode, ///
|
|
161
|
+
string = stringFromStatements(statements),
|
|
162
|
+
subproofAssertion = new SubproofAssertion(string, node, statements);
|
|
117
163
|
|
|
118
164
|
return subproofAssertion;
|
|
119
165
|
}
|
|
@@ -122,14 +168,14 @@ export default class SubproofAssertion {
|
|
|
122
168
|
function stringFromStatements(statements) {
|
|
123
169
|
const frontStatements = front(statements),
|
|
124
170
|
lastStatement = last(statements),
|
|
125
|
-
frontStatementsString =
|
|
171
|
+
frontStatementsString = statementsStringFromStatements(frontStatements),
|
|
126
172
|
lastStatementString = lastStatement.getString(),
|
|
127
173
|
string = `[${frontStatementsString}] ... ${lastStatementString}`;
|
|
128
174
|
|
|
129
175
|
return string;
|
|
130
176
|
}
|
|
131
177
|
|
|
132
|
-
function
|
|
178
|
+
function statementsStringFromStatements(statements) {
|
|
133
179
|
const statementsString = statements.reduce((statementsString, statement) => {
|
|
134
180
|
const statementString = statement.getString();
|
|
135
181
|
|
package/src/assertion/type.js
CHANGED
|
@@ -84,7 +84,7 @@ export default class TypeAssertion {
|
|
|
84
84
|
|
|
85
85
|
const typeAssertionString = this.string; ///
|
|
86
86
|
|
|
87
|
-
localContext.trace(`Verifying the
|
|
87
|
+
localContext.trace(`Verifying the '${typeAssertionString}' stated type assertion...`);
|
|
88
88
|
|
|
89
89
|
const typeVerified = this.verifyType(localContext);
|
|
90
90
|
|
|
@@ -115,7 +115,7 @@ export default class TypeAssertion {
|
|
|
115
115
|
}
|
|
116
116
|
|
|
117
117
|
if (verifiedWhenStated) {
|
|
118
|
-
localContext.debug(`...verified the
|
|
118
|
+
localContext.debug(`...verified the '${typeAssertionString}' stated type assertion.`);
|
|
119
119
|
}
|
|
120
120
|
|
|
121
121
|
return verifiedWhenStated;
|
|
@@ -126,7 +126,7 @@ export default class TypeAssertion {
|
|
|
126
126
|
|
|
127
127
|
const typeAssertionString = this.string; ///
|
|
128
128
|
|
|
129
|
-
localContext.trace(`Verifying the
|
|
129
|
+
localContext.trace(`Verifying the '${typeAssertionString}' derived type assertion...`);
|
|
130
130
|
|
|
131
131
|
const typeVerified = this.verifyType(localContext);
|
|
132
132
|
|
|
@@ -146,7 +146,7 @@ export default class TypeAssertion {
|
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
if (verifiedWhenDerived) {
|
|
149
|
-
localContext.debug(`...verified the
|
|
149
|
+
localContext.debug(`...verified the '${typeAssertionString}' derived type assertion.`);
|
|
150
150
|
}
|
|
151
151
|
|
|
152
152
|
return verifiedWhenDerived;
|
package/src/context/file.js
CHANGED
|
@@ -54,7 +54,7 @@ export default class FileContext {
|
|
|
54
54
|
return this.node;
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
findFile(filePath) { return this.releaseContext.findFile(filePath); }
|
|
58
58
|
|
|
59
59
|
getLexer() { return this.releaseContext.getLexer(); }
|
|
60
60
|
|
|
@@ -877,28 +877,7 @@ export default class FileContext {
|
|
|
877
877
|
});
|
|
878
878
|
}
|
|
879
879
|
|
|
880
|
-
static
|
|
881
|
-
const { filePath } = json,
|
|
882
|
-
tokens = null,
|
|
883
|
-
node = null,
|
|
884
|
-
types = [],
|
|
885
|
-
rules = [],
|
|
886
|
-
axioms = [],
|
|
887
|
-
lemmas = [],
|
|
888
|
-
theorems = [],
|
|
889
|
-
variables = [],
|
|
890
|
-
metaLemmas = [],
|
|
891
|
-
conjectures = [],
|
|
892
|
-
combinators = [],
|
|
893
|
-
constructors = [],
|
|
894
|
-
metatheorems = [],
|
|
895
|
-
metavariables = [],
|
|
896
|
-
fileContext = new FileContext(releaseContext, filePath, tokens, node, types, rules, axioms, lemmas, variables, metaLemmas, theorems, conjectures, combinators, constructors, metatheorems, metavariables);
|
|
897
|
-
|
|
898
|
-
return fileContext;
|
|
899
|
-
}
|
|
900
|
-
|
|
901
|
-
static fromFileAndReleaseContext(file, releaseContext) {
|
|
880
|
+
static fromFile(file, releaseContext) {
|
|
902
881
|
const lexer = releaseContext.getLexer(),
|
|
903
882
|
parser = releaseContext.getParser(),
|
|
904
883
|
filePath = file.getPath(),
|
|
@@ -922,29 +901,4 @@ export default class FileContext {
|
|
|
922
901
|
|
|
923
902
|
return fileContext;
|
|
924
903
|
}
|
|
925
|
-
|
|
926
|
-
static fromFilePathAndReleaseContext(filePath, releaseContext) {
|
|
927
|
-
const file = releaseContext.getFile(filePath),
|
|
928
|
-
lexer = releaseContext.getLexer(),
|
|
929
|
-
parser = releaseContext.getParser(),
|
|
930
|
-
fileContent = file.getContent(),
|
|
931
|
-
content = fileContent, ////
|
|
932
|
-
tokens = lexer.tokenise(content),
|
|
933
|
-
node = parser.parse(tokens),
|
|
934
|
-
types = [],
|
|
935
|
-
rules = [],
|
|
936
|
-
axioms = [],
|
|
937
|
-
lemmas = [],
|
|
938
|
-
theorems = [],
|
|
939
|
-
variables = [],
|
|
940
|
-
metaLemmas = [],
|
|
941
|
-
conjectures = [],
|
|
942
|
-
combinators = [],
|
|
943
|
-
constructors = [],
|
|
944
|
-
metatheorems = [],
|
|
945
|
-
metavariables = [],
|
|
946
|
-
fileContext = new FileContext(releaseContext, filePath, tokens, node, types, rules, axioms, lemmas, variables, metaLemmas, theorems, conjectures, combinators, constructors, metatheorems, metavariables);
|
|
947
|
-
|
|
948
|
-
return fileContext;
|
|
949
|
-
}
|
|
950
904
|
}
|