occam-verify-cli 0.0.922 → 0.0.924
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/axiom.js +9 -9
- package/lib/conclusion.js +11 -41
- package/lib/conjecture.js +9 -9
- package/lib/constants.js +1 -13
- package/lib/context/file.js +3 -3
- package/lib/context/local.js +19 -59
- package/lib/declaration.js +15 -15
- package/lib/lemma.js +9 -9
- package/lib/metaLemma.js +7 -7
- package/lib/metatheorem.js +7 -7
- package/lib/metavariable.js +8 -1
- package/lib/mixins/nodesVerifier/metaLevel.js +6 -6
- package/lib/premise.js +14 -91
- package/lib/{step/proof.js → proofStep.js} +1 -1
- package/lib/rule.js +1 -45
- package/lib/ruleNames.js +1 -9
- package/lib/substitution/statementForMetavariable.js +9 -1
- package/lib/substitution.js +1 -8
- package/lib/supposition.js +55 -1
- package/lib/theorem.js +9 -9
- package/lib/topLevelAssertion.js +186 -0
- package/lib/utilities/customGrammar.js +2 -2
- package/lib/utilities/match.js +13 -50
- package/lib/utilities/node.js +2 -27
- package/lib/utilities/tokens.js +1 -8
- package/lib/utilities/verify.js +8 -24
- package/lib/verifier/nodes/intrinsicLevelAgainstMetaLevel.js +29 -29
- package/lib/verifier/nodes/metaLevel.js +13 -13
- package/lib/verify/axiom.js +4 -4
- package/lib/verify/conclusion.js +10 -11
- package/lib/verify/conjecture.js +4 -4
- package/lib/verify/containedAssertion.js +91 -0
- package/lib/verify/declaration.js +7 -7
- package/lib/verify/definedAssertion.js +115 -0
- package/lib/verify/derivation.js +7 -7
- package/lib/verify/frame.js +2 -2
- package/lib/verify/judgement.js +2 -2
- package/lib/verify/lemma.js +5 -5
- package/lib/verify/metaLemma.js +12 -12
- package/lib/verify/metastatement.js +48 -67
- package/lib/verify/metatheorem.js +12 -12
- package/lib/verify/metavariable.js +2 -2
- package/lib/verify/premise.js +11 -30
- package/lib/verify/proof.js +3 -3
- package/lib/verify/proofStep.js +8 -8
- package/lib/verify/rule.js +10 -10
- package/lib/verify/statement/qualified.js +38 -15
- package/lib/verify/statement/unqualified.js +38 -10
- package/lib/verify/statement.js +85 -92
- package/lib/verify/subDerivation.js +3 -3
- package/lib/verify/subproof.js +3 -3
- package/lib/verify/supposition.js +3 -3
- package/lib/verify/termAsConstructor.js +2 -2
- package/lib/verify/theorem.js +4 -4
- package/package.json +2 -2
- package/src/axiom.js +4 -4
- package/src/conclusion.js +13 -52
- package/src/conjecture.js +4 -4
- package/src/constants.js +0 -3
- package/src/context/file.js +2 -2
- package/src/context/local.js +21 -67
- package/src/declaration.js +19 -19
- package/src/lemma.js +4 -4
- package/src/metaLemma.js +4 -4
- package/src/metatheorem.js +4 -4
- package/src/metavariable.js +6 -0
- package/src/mixins/nodesVerifier/metaLevel.js +8 -8
- package/src/premise.js +20 -137
- package/src/rule.js +0 -67
- package/src/ruleNames.js +0 -2
- package/src/substitution/statementForMetavariable.js +14 -0
- package/src/substitution.js +0 -6
- package/src/supposition.js +46 -0
- package/src/theorem.js +4 -4
- package/src/{axiomLemmaTheoremConjecture.js → topLevelAssertion.js} +36 -23
- package/src/utilities/customGrammar.js +1 -2
- package/src/utilities/match.js +13 -60
- package/src/utilities/node.js +3 -32
- package/src/utilities/tokens.js +0 -8
- package/src/utilities/verify.js +4 -20
- package/src/verifier/nodes/intrinsicLevelAgainstMetaLevel.js +36 -37
- package/src/verifier/nodes/metaLevel.js +17 -17
- package/src/verify/axiom.js +5 -4
- package/src/verify/conclusion.js +9 -13
- package/src/verify/conjecture.js +5 -4
- package/src/verify/{statementAsContainedAssertion.js → containedAssertion.js} +20 -36
- package/src/verify/declaration.js +8 -8
- package/src/verify/{statementAsDefinedAssertion.js → definedAssertion.js} +22 -37
- package/src/verify/derivation.js +6 -6
- package/src/verify/frame.js +1 -1
- package/src/verify/judgement.js +1 -1
- package/src/verify/lemma.js +8 -5
- package/src/verify/metaLemma.js +24 -24
- package/src/verify/metastatement.js +48 -76
- package/src/verify/metatheorem.js +23 -23
- package/src/verify/metavariable.js +1 -1
- package/src/verify/premise.js +14 -46
- package/src/verify/proof.js +2 -2
- package/src/verify/proofStep.js +4 -4
- package/src/verify/rule.js +11 -11
- package/src/verify/statement/qualified.js +56 -21
- package/src/verify/statement/unqualified.js +52 -10
- package/src/verify/statement.js +133 -39
- package/src/verify/subDerivation.js +2 -2
- package/src/verify/subproof.js +2 -2
- package/src/verify/supposition.js +1 -1
- package/src/verify/termAsConstructor.js +2 -2
- package/src/verify/theorem.js +7 -4
- package/lib/axiomLemmaTheoremConjecture.js +0 -174
- package/lib/metaConsequent.js +0 -108
- package/lib/metaLemmaMetatheorem.js +0 -191
- package/lib/metaSupposition.js +0 -160
- package/lib/node/metastatement/bracketed.js +0 -16
- package/lib/step/metaproof.js +0 -106
- package/lib/substitution/metastatementForMetavariable.js +0 -173
- package/lib/verify/metaConsequent.js +0 -50
- package/lib/verify/metaDerivation.js +0 -31
- package/lib/verify/metaSubDerivation.js +0 -25
- package/lib/verify/metaSubproof.js +0 -34
- package/lib/verify/metaSupposition.js +0 -61
- package/lib/verify/metaSuppositions.js +0 -28
- package/lib/verify/metaproof.js +0 -31
- package/lib/verify/metaproofStep.js +0 -98
- package/lib/verify/metastatement/qualified.js +0 -95
- package/lib/verify/metastatement/unqualified.js +0 -37
- package/lib/verify/metastatementAsContainedAssertion.js +0 -109
- package/lib/verify/metastatementAsDefinedAssertion.js +0 -132
- package/lib/verify/metavariableAgainstMetastatement.js +0 -44
- package/lib/verify/statementAsContainedAssertion.js +0 -109
- package/lib/verify/statementAsDefinedAssertion.js +0 -132
- package/src/metaConsequent.js +0 -83
- package/src/metaLemmaMetatheorem.js +0 -188
- package/src/metaSupposition.js +0 -127
- package/src/node/metastatement/bracketed.js +0 -9
- package/src/step/metaproof.js +0 -73
- package/src/substitution/metastatementForMetavariable.js +0 -90
- package/src/verify/metaConsequent.js +0 -61
- package/src/verify/metaDerivation.js +0 -23
- package/src/verify/metaSubDerivation.js +0 -22
- package/src/verify/metaSubproof.js +0 -32
- package/src/verify/metaSupposition.js +0 -78
- package/src/verify/metaSuppositions.js +0 -17
- package/src/verify/metaproof.js +0 -28
- package/src/verify/metaproofStep.js +0 -137
- package/src/verify/metastatement/qualified.js +0 -130
- package/src/verify/metastatement/unqualified.js +0 -34
- package/src/verify/metastatementAsContainedAssertion.js +0 -127
- package/src/verify/metastatementAsDefinedAssertion.js +0 -156
- package/src/verify/metavariableAgainstMetastatement.js +0 -42
- /package/src/{step/proof.js → proofStep.js} +0 -0
package/lib/verify/conclusion.js
CHANGED
|
@@ -9,27 +9,26 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _conclusion = /*#__PURE__*/ _interop_require_default(require("../conclusion"));
|
|
12
|
-
var _unqualified = /*#__PURE__*/ _interop_require_default(require("
|
|
13
|
-
var _unqualified1 = /*#__PURE__*/ _interop_require_default(require("../verify/metastatement/unqualified"));
|
|
12
|
+
var _unqualified = /*#__PURE__*/ _interop_require_default(require("../verify/statement/unqualified"));
|
|
14
13
|
var _query = require("../utilities/query");
|
|
15
14
|
function _interop_require_default(obj) {
|
|
16
15
|
return obj && obj.__esModule ? obj : {
|
|
17
16
|
default: obj
|
|
18
17
|
};
|
|
19
18
|
}
|
|
20
|
-
var statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!"),
|
|
19
|
+
var statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!"), unqualifiedStatementNodeQuery = (0, _query.nodeQuery)("/conclusion/unqualifiedStatement!");
|
|
21
20
|
function verifyConclusion(conclusionNode, conclusions, localContext) {
|
|
22
21
|
var conclusionVerified = false;
|
|
23
22
|
var conclusionString = localContext.nodeAsString(conclusionNode);
|
|
24
23
|
localContext.trace("Verifying the '".concat(conclusionString, "' conclusion..."), conclusionNode);
|
|
25
|
-
var unqualifiedStatementNode = unqualifiedStatementNodeQuery(conclusionNode)
|
|
24
|
+
var unqualifiedStatementNode = unqualifiedStatementNodeQuery(conclusionNode);
|
|
26
25
|
if (unqualifiedStatementNode !== null) {
|
|
27
26
|
var derived = false, assignments = [], unqualifiedStatementVerified = (0, _unqualified.default)(unqualifiedStatementNode, assignments, derived, localContext);
|
|
28
27
|
conclusionVerified = unqualifiedStatementVerified; ///
|
|
29
28
|
}
|
|
30
|
-
if (
|
|
31
|
-
var derived1 = false, assignments1 = [],
|
|
32
|
-
conclusionVerified =
|
|
29
|
+
if (unqualifiedStatementNode !== null) {
|
|
30
|
+
var derived1 = false, assignments1 = [], unqualifiedStatementVerified1 = (0, _unqualified.default)(unqualifiedStatementNode, assignments1, derived1, localContext);
|
|
31
|
+
conclusionVerified = unqualifiedStatementVerified1; ///
|
|
33
32
|
}
|
|
34
33
|
if (conclusionVerified) {
|
|
35
34
|
var conclusion;
|
|
@@ -37,9 +36,9 @@ function verifyConclusion(conclusionNode, conclusions, localContext) {
|
|
|
37
36
|
var statementNode = statementNodeQuery(unqualifiedStatementNode);
|
|
38
37
|
conclusion = _conclusion.default.fromStatementNode(statementNode);
|
|
39
38
|
}
|
|
40
|
-
if (
|
|
41
|
-
var
|
|
42
|
-
conclusion = _conclusion.default.
|
|
39
|
+
if (unqualifiedStatementNode !== null) {
|
|
40
|
+
var statementNode1 = statementNodeQuery(unqualifiedStatementNode);
|
|
41
|
+
conclusion = _conclusion.default.fromStatementNode(statementNode1);
|
|
43
42
|
}
|
|
44
43
|
conclusions.push(conclusion);
|
|
45
44
|
localContext.debug("...verified the '".concat(conclusionString, "' conclusion."), conclusionNode);
|
|
@@ -47,4 +46,4 @@ function verifyConclusion(conclusionNode, conclusions, localContext) {
|
|
|
47
46
|
return conclusionVerified;
|
|
48
47
|
}
|
|
49
48
|
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvY29uY2x1c2lvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IENvbmNsdXNpb24gZnJvbSBcIi4uL2NvbmNsdXNpb25cIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC91bnF1YWxpZmllZFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZFN0YXRlbWVudC9zdGF0ZW1lbnQhXCIpLFxuICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29uY2x1c2lvbi91bnF1YWxpZmllZFN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeUNvbmNsdXNpb24oY29uY2x1c2lvbk5vZGUsIGNvbmNsdXNpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGNvbmNsdXNpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGNvbmNsdXNpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGNvbmNsdXNpb25Ob2RlKTtcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7Y29uY2x1c2lvblN0cmluZ30nIGNvbmNsdXNpb24uLi5gLCBjb25jbHVzaW9uTm9kZSk7XG5cbiAgY29uc3QgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkoY29uY2x1c2lvbk5vZGUpO1xuXG4gIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgIGNvbmNsdXNpb25WZXJpZmllZCA9IHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQ7IC8vL1xuICB9XG5cbiAgaWYgKHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGRlcml2ZWQgPSBmYWxzZSxcbiAgICAgICAgICBhc3NpZ25tZW50cyA9IFtdLFxuICAgICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgY29uY2x1c2lvblZlcmlmaWVkID0gdW5xdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZDsgLy8vXG4gIH1cblxuICBpZiAoY29uY2x1c2lvblZlcmlmaWVkKSB7XG4gICAgbGV0IGNvbmNsdXNpb247XG5cbiAgICBpZiAodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgIGNvbmNsdXNpb24gPSBDb25jbHVzaW9uLmZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUpO1xuICAgIH1cblxuICAgIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICAgICAgY29uY2x1c2lvbiA9IENvbmNsdXNpb24uZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgY29uY2x1c2lvbnMucHVzaChjb25jbHVzaW9uKTtcblxuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbmNsdXNpb25TdHJpbmd9JyBjb25jbHVzaW9uLmAsIGNvbmNsdXNpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBjb25jbHVzaW9uVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5Q29uY2x1c2lvbiIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5IiwiY29uY2x1c2lvbk5vZGUiLCJjb25jbHVzaW9ucyIsImxvY2FsQ29udGV4dCIsImNvbmNsdXNpb25WZXJpZmllZCIsImNvbmNsdXNpb25TdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImRlcml2ZWQiLCJhc3NpZ25tZW50cyIsInVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQiLCJ2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCIsImNvbmNsdXNpb24iLCJzdGF0ZW1lbnROb2RlIiwiQ29uY2x1c2lvbiIsImZyb21TdGF0ZW1lbnROb2RlIiwicHVzaCIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7O2lFQVJEO2tFQUNnQjtxQkFFYjs7Ozs7O0FBRTFCLElBQU1DLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQyxxQ0FDL0JDLGdDQUFnQ0QsSUFBQUEsZ0JBQVMsRUFBQztBQUVqQyxTQUFTRixpQkFBaUJJLGNBQWMsRUFBRUMsV0FBVyxFQUFFQyxZQUFZO0lBQ2hGLElBQUlDLHFCQUFxQjtJQUV6QixJQUFNQyxtQkFBbUJGLGFBQWFHLFlBQVksQ0FBQ0w7SUFFbkRFLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUFrQyxPQUFqQkYsa0JBQWlCLG9CQUFrQko7SUFFeEUsSUFBTU8sMkJBQTJCUiw4QkFBOEJDO0lBRS9ELElBQUlPLDZCQUE2QixNQUFNO1FBQ3JDLElBQU1DLFVBQVUsT0FDVkMsY0FBYyxFQUFFLEVBQ2hCQywrQkFBK0JDLElBQUFBLG9CQUEwQixFQUFDSiwwQkFBMEJFLGFBQWFELFNBQVNOO1FBRWhIQyxxQkFBcUJPLDhCQUE4QixHQUFHO0lBQ3hEO0lBRUEsSUFBSUgsNkJBQTZCLE1BQU07UUFDckMsSUFBTUMsV0FBVSxPQUNWQyxlQUFjLEVBQUUsRUFDaEJDLGdDQUErQkMsSUFBQUEsb0JBQTBCLEVBQUNKLDBCQUEwQkUsY0FBYUQsVUFBU047UUFFaEhDLHFCQUFxQk8sK0JBQThCLEdBQUc7SUFDeEQ7SUFFQSxJQUFJUCxvQkFBb0I7UUFDdEIsSUFBSVM7UUFFSixJQUFJTCw2QkFBNkIsTUFBTTtZQUNyQyxJQUFNTSxnQkFBZ0JoQixtQkFBbUJVO1lBRXpDSyxhQUFhRSxtQkFBVSxDQUFDQyxpQkFBaUIsQ0FBQ0Y7UUFDNUM7UUFFQSxJQUFJTiw2QkFBNkIsTUFBTTtZQUNyQyxJQUFNTSxpQkFBZ0JoQixtQkFBbUJVO1lBRXpDSyxhQUFhRSxtQkFBVSxDQUFDQyxpQkFBaUIsQ0FBQ0Y7UUFDNUM7UUFFQVosWUFBWWUsSUFBSSxDQUFDSjtRQUVqQlYsYUFBYWUsS0FBSyxDQUFDLEFBQUMsb0JBQW9DLE9BQWpCYixrQkFBaUIsa0JBQWdCSjtJQUMxRTtJQUVBLE9BQU9HO0FBQ1QifQ==
|
package/lib/verify/conjecture.js
CHANGED
|
@@ -24,11 +24,11 @@ function _interop_require_default(obj) {
|
|
|
24
24
|
var proofNodeQuery = (0, _query.nodeQuery)("/conjecture/proof!"), labelNodesQuery = (0, _query.nodesQuery)("/conjecture/label!"), consequentNodeQuery = (0, _query.nodeQuery)("/conjecture/consequent!"), suppositionsNodeQuery = (0, _query.nodesQuery)("/conjecture/supposition");
|
|
25
25
|
function verifyConjecture(conjectureNode, fileContext) {
|
|
26
26
|
var conjectureVerified = false;
|
|
27
|
-
var labelNodes = labelNodesQuery(conjectureNode), labelsString = fileContext.nodesAsString(labelNodes)
|
|
27
|
+
var labelNodes = labelNodesQuery(conjectureNode), labelsString = fileContext.nodesAsString(labelNodes);
|
|
28
28
|
fileContext.trace("Verifying the '".concat(labelsString, "' conjecture..."), conjectureNode);
|
|
29
29
|
var labels = [], labelsVerified = (0, _labels.default)(labelNodes, labels, fileContext);
|
|
30
30
|
if (labelsVerified) {
|
|
31
|
-
var suppositions = [], suppositionNodes = suppositionsNodeQuery(conjectureNode), suppositionsVerified = (0, _suppositions.default)(suppositionNodes, suppositions, localContext);
|
|
31
|
+
var localContext = _local.default.fromFileContext(fileContext), suppositions = [], suppositionNodes = suppositionsNodeQuery(conjectureNode), suppositionsVerified = (0, _suppositions.default)(suppositionNodes, suppositions, localContext);
|
|
32
32
|
if (suppositionsVerified) {
|
|
33
33
|
var consequents = [], consequentNode = consequentNodeQuery(conjectureNode), consequentVerified = (0, _consequent.default)(consequentNode, consequents, localContext);
|
|
34
34
|
if (consequentVerified) {
|
|
@@ -36,7 +36,7 @@ function verifyConjecture(conjectureNode, fileContext) {
|
|
|
36
36
|
if (proofNode !== null) {
|
|
37
37
|
(0, _proof.default)(proofNode, consequent, localContext);
|
|
38
38
|
}
|
|
39
|
-
var conjecture = _conjecture.default.
|
|
39
|
+
var substitutions = [], conjecture = _conjecture.default.fromLabelsSuppositionsConsequentSubstitutionsAndFileContext(labels, suppositions, consequent, substitutions, fileContext);
|
|
40
40
|
fileContext.addConjecture(conjecture);
|
|
41
41
|
conjectureVerified = true;
|
|
42
42
|
}
|
|
@@ -48,4 +48,4 @@ function verifyConjecture(conjectureNode, fileContext) {
|
|
|
48
48
|
return conjectureVerified;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvY29uamVjdHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IENvbmplY3R1cmUgZnJvbSBcIi4uL2NvbmplY3R1cmVcIjtcbmltcG9ydCB2ZXJpZnlQcm9vZiBmcm9tIFwiLi4vdmVyaWZ5L3Byb29mXCI7XG5pbXBvcnQgdmVyaWZ5TGFiZWxzIGZyb20gXCIuLi92ZXJpZnkvbGFiZWxzXCI7XG5pbXBvcnQgTG9jYWxDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L2xvY2FsXCI7XG5pbXBvcnQgdmVyaWZ5Q29uc2VxdWVudCBmcm9tIFwiLi4vdmVyaWZ5L2NvbnNlcXVlbnRcIjtcbmltcG9ydCB2ZXJpZnlTdXBwb3NpdGlvbnMgZnJvbSBcIi4uL3ZlcmlmeS9zdXBwb3NpdGlvbnNcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHByb29mTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbmplY3R1cmUvcHJvb2YhXCIpLFxuICAgICAgbGFiZWxOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9jb25qZWN0dXJlL2xhYmVsIVwiKSxcbiAgICAgIGNvbnNlcXVlbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29uamVjdHVyZS9jb25zZXF1ZW50IVwiKSxcbiAgICAgIHN1cHBvc2l0aW9uc05vZGVRdWVyeSA9IG5vZGVzUXVlcnkoXCIvY29uamVjdHVyZS9zdXBwb3NpdGlvblwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5Q29uamVjdHVyZShjb25qZWN0dXJlTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IGNvbmplY3R1cmVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGxhYmVsTm9kZXMgPSBsYWJlbE5vZGVzUXVlcnkoY29uamVjdHVyZU5vZGUpLFxuICAgICAgICBsYWJlbHNTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2Rlc0FzU3RyaW5nKGxhYmVsTm9kZXMpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2xhYmVsc1N0cmluZ30nIGNvbmplY3R1cmUuLi5gLCBjb25qZWN0dXJlTm9kZSk7XG5cbiAgY29uc3QgbGFiZWxzID0gW10sXG4gICAgICAgIGxhYmVsc1ZlcmlmaWVkID0gdmVyaWZ5TGFiZWxzKGxhYmVsTm9kZXMsIGxhYmVscywgZmlsZUNvbnRleHQpO1xuXG4gIGlmIChsYWJlbHNWZXJpZmllZCkge1xuICAgIGNvbnN0IGxvY2FsQ29udGV4dCA9IExvY2FsQ29udGV4dC5mcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpLFxuICAgICAgICAgIHN1cHBvc2l0aW9ucyA9IFtdLFxuICAgICAgICAgIHN1cHBvc2l0aW9uTm9kZXMgPSBzdXBwb3NpdGlvbnNOb2RlUXVlcnkoY29uamVjdHVyZU5vZGUpLFxuICAgICAgICAgIHN1cHBvc2l0aW9uc1ZlcmlmaWVkID0gdmVyaWZ5U3VwcG9zaXRpb25zKHN1cHBvc2l0aW9uTm9kZXMsIHN1cHBvc2l0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChzdXBwb3NpdGlvbnNWZXJpZmllZCkge1xuICAgICAgY29uc3QgY29uc2VxdWVudHMgPSBbXSxcbiAgICAgICAgICAgIGNvbnNlcXVlbnROb2RlID0gY29uc2VxdWVudE5vZGVRdWVyeShjb25qZWN0dXJlTm9kZSksXG4gICAgICAgICAgICBjb25zZXF1ZW50VmVyaWZpZWQgPSB2ZXJpZnlDb25zZXF1ZW50KGNvbnNlcXVlbnROb2RlLCBjb25zZXF1ZW50cywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGNvbnNlcXVlbnRWZXJpZmllZCkge1xuICAgICAgICBjb25zdCBwcm9vZk5vZGUgPSBwcm9vZk5vZGVRdWVyeShjb25qZWN0dXJlTm9kZSksXG4gICAgICAgICAgICAgIGZpcnN0Q29uc2VxdWVudCA9IGZpcnN0KGNvbnNlcXVlbnRzKSxcbiAgICAgICAgICAgICAgY29uc2VxdWVudCA9IGZpcnN0Q29uc2VxdWVudDsgLy8vXG5cbiAgICAgICAgaWYgKHByb29mTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICAgIHZlcmlmeVByb29mKHByb29mTm9kZSwgY29uc2VxdWVudCwgbG9jYWxDb250ZXh0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN1YnN0aXR1dGlvbnMgPSBbXSxcbiAgICAgICAgICAgICAgY29uamVjdHVyZSA9IENvbmplY3R1cmUuZnJvbUxhYmVsc1N1cHBvc2l0aW9uc0NvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQobGFiZWxzLCBzdXBwb3NpdGlvbnMsIGNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICBmaWxlQ29udGV4dC5hZGRDb25qZWN0dXJlKGNvbmplY3R1cmUpO1xuXG4gICAgICAgIGNvbmplY3R1cmVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKGNvbmplY3R1cmVWZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bGFiZWxzU3RyaW5nfScgY29uamVjdHVyZS5gLCBjb25qZWN0dXJlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gY29uamVjdHVyZVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUNvbmplY3R1cmUiLCJwcm9vZk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsImxhYmVsTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJjb25zZXF1ZW50Tm9kZVF1ZXJ5Iiwic3VwcG9zaXRpb25zTm9kZVF1ZXJ5IiwiY29uamVjdHVyZU5vZGUiLCJmaWxlQ29udGV4dCIsImNvbmplY3R1cmVWZXJpZmllZCIsImxhYmVsTm9kZXMiLCJsYWJlbHNTdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwidHJhY2UiLCJsYWJlbHMiLCJsYWJlbHNWZXJpZmllZCIsInZlcmlmeUxhYmVscyIsImxvY2FsQ29udGV4dCIsIkxvY2FsQ29udGV4dCIsImZyb21GaWxlQ29udGV4dCIsInN1cHBvc2l0aW9ucyIsInN1cHBvc2l0aW9uTm9kZXMiLCJzdXBwb3NpdGlvbnNWZXJpZmllZCIsInZlcmlmeVN1cHBvc2l0aW9ucyIsImNvbnNlcXVlbnRzIiwiY29uc2VxdWVudE5vZGUiLCJjb25zZXF1ZW50VmVyaWZpZWQiLCJ2ZXJpZnlDb25zZXF1ZW50IiwicHJvb2ZOb2RlIiwiZmlyc3RDb25zZXF1ZW50IiwiZmlyc3QiLCJjb25zZXF1ZW50IiwidmVyaWZ5UHJvb2YiLCJzdWJzdGl0dXRpb25zIiwiY29uamVjdHVyZSIsIkNvbmplY3R1cmUiLCJmcm9tTGFiZWxzU3VwcG9zaXRpb25zQ29uc2VxdWVudFN1YnN0aXR1dGlvbnNBbmRGaWxlQ29udGV4dCIsImFkZENvbmplY3R1cmUiLCJkZWJ1ZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBaUJBOzs7ZUFBd0JBOzs7aUVBZkQ7NERBQ0M7NkRBQ0M7NERBQ0E7aUVBQ0k7bUVBQ0U7cUJBRVQ7cUJBQ2dCOzs7Ozs7QUFFdEMsSUFBTUMsaUJBQWlCQyxJQUFBQSxnQkFBUyxFQUFDLHVCQUMzQkMsa0JBQWtCQyxJQUFBQSxpQkFBVSxFQUFDLHVCQUM3QkMsc0JBQXNCSCxJQUFBQSxnQkFBUyxFQUFDLDRCQUNoQ0ksd0JBQXdCRixJQUFBQSxpQkFBVSxFQUFDO0FBRTFCLFNBQVNKLGlCQUFpQk8sY0FBYyxFQUFFQyxXQUFXO0lBQ2xFLElBQUlDLHFCQUFxQjtJQUV6QixJQUFNQyxhQUFhUCxnQkFBZ0JJLGlCQUM3QkksZUFBZUgsWUFBWUksYUFBYSxDQUFDRjtJQUUvQ0YsWUFBWUssS0FBSyxDQUFDLEFBQUMsa0JBQThCLE9BQWJGLGNBQWEsb0JBQWtCSjtJQUVuRSxJQUFNTyxTQUFTLEVBQUUsRUFDWEMsaUJBQWlCQyxJQUFBQSxlQUFZLEVBQUNOLFlBQVlJLFFBQVFOO0lBRXhELElBQUlPLGdCQUFnQjtRQUNsQixJQUFNRSxlQUFlQyxjQUFZLENBQUNDLGVBQWUsQ0FBQ1gsY0FDNUNZLGVBQWUsRUFBRSxFQUNqQkMsbUJBQW1CZixzQkFBc0JDLGlCQUN6Q2UsdUJBQXVCQyxJQUFBQSxxQkFBa0IsRUFBQ0Ysa0JBQWtCRCxjQUFjSDtRQUVoRixJQUFJSyxzQkFBc0I7WUFDeEIsSUFBTUUsY0FBYyxFQUFFLEVBQ2hCQyxpQkFBaUJwQixvQkFBb0JFLGlCQUNyQ21CLHFCQUFxQkMsSUFBQUEsbUJBQWdCLEVBQUNGLGdCQUFnQkQsYUFBYVA7WUFFekUsSUFBSVMsb0JBQW9CO2dCQUN0QixJQUFNRSxZQUFZM0IsZUFBZU0saUJBQzNCc0Isa0JBQWtCQyxJQUFBQSxZQUFLLEVBQUNOLGNBQ3hCTyxhQUFhRixpQkFBaUIsR0FBRztnQkFFdkMsSUFBSUQsY0FBYyxNQUFNO29CQUN0QkksSUFBQUEsY0FBVyxFQUFDSixXQUFXRyxZQUFZZDtnQkFDckM7Z0JBRUEsSUFBTWdCLGdCQUFnQixFQUFFLEVBQ2xCQyxhQUFhQyxtQkFBVSxDQUFDQywyREFBMkQsQ0FBQ3RCLFFBQVFNLGNBQWNXLFlBQVlFLGVBQWV6QjtnQkFFM0lBLFlBQVk2QixhQUFhLENBQUNIO2dCQUUxQnpCLHFCQUFxQjtZQUN2QjtRQUNGO0lBQ0Y7SUFFQSxJQUFJQSxvQkFBb0I7UUFDdEJELFlBQVk4QixLQUFLLENBQUMsQUFBQyxvQkFBZ0MsT0FBYjNCLGNBQWEsa0JBQWdCSjtJQUNyRTtJQUVBLE9BQU9FO0FBQ1QifQ==
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return verifyContainedAssertion;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../verifier/node/metaLevel"));
|
|
12
|
+
var _verify = require("../utilities/verify");
|
|
13
|
+
var _query = require("../utilities/query");
|
|
14
|
+
function _interop_require_default(obj) {
|
|
15
|
+
return obj && obj.__esModule ? obj : {
|
|
16
|
+
default: obj
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
var termNodeQuery = (0, _query.nodeQuery)("/statement/term!"), statementTermNodesQuery = (0, _query.nodesQuery)("/statement/metaArgument/statement//term");
|
|
20
|
+
function verifyContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
|
|
21
|
+
var statementVerifiedAsContainedAssertion;
|
|
22
|
+
var statementContainedAssertion = isStatementContainedAssertion(containedAssertionNode);
|
|
23
|
+
if (statementContainedAssertion) {
|
|
24
|
+
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
25
|
+
localContext.trace("Verifying the '".concat(containedAssertionString, "' statement as a contained assertion..."), containedAssertionNode);
|
|
26
|
+
var statementFunctions = [
|
|
27
|
+
verifyStatementAsDerivedContainedAssertion,
|
|
28
|
+
verifyStatementAsStatedContainedAssertion
|
|
29
|
+
];
|
|
30
|
+
statementVerifiedAsContainedAssertion = statementFunctions.some(function(statementFunction) {
|
|
31
|
+
var statementVerifiedAsContainedAssertion = statementFunction(containedAssertionNode, assignments, derived, localContext);
|
|
32
|
+
if (statementVerifiedAsContainedAssertion) {
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
if (statementVerifiedAsContainedAssertion) {
|
|
37
|
+
localContext.debug("...verified the '".concat(containedAssertionString, "' statement as a contained assertion."), containedAssertionNode);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return statementVerifiedAsContainedAssertion;
|
|
41
|
+
}
|
|
42
|
+
function verifyStatementAsDerivedContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
|
|
43
|
+
var statementVerifiedAsDefinedContainedAssertion = false;
|
|
44
|
+
if (derived) {
|
|
45
|
+
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
46
|
+
localContext.trace("Verifying the '".concat(containedAssertionString, "' derived statement as a contained assertion..."), containedAssertionNode);
|
|
47
|
+
var statementNegated = (0, _verify.isStatementNegated)(containedAssertionNode), termNode = termNodeQuery(containedAssertionNode), negated = statementNegated, statementTermNodes = statementTermNodesQuery(containedAssertionNode), termNodeMatchesMetaArgumentVariableNode = statementTermNodes.some(function(statementTermNode) {
|
|
48
|
+
var termNodeMatchesMetaArgumentVariableNode = termNode.match(statementTermNode);
|
|
49
|
+
if (termNodeMatchesMetaArgumentVariableNode) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
if (!negated) {
|
|
54
|
+
if (termNodeMatchesMetaArgumentVariableNode) {
|
|
55
|
+
statementVerifiedAsDefinedContainedAssertion = true;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
if (negated) {
|
|
59
|
+
if (!termNodeMatchesMetaArgumentVariableNode) {
|
|
60
|
+
statementVerifiedAsDefinedContainedAssertion = true;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
if (statementVerifiedAsDefinedContainedAssertion) {
|
|
64
|
+
localContext.debug("...verified the '".concat(containedAssertionString, "' derived statement as a contained assertion."), containedAssertionNode);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return statementVerifiedAsDefinedContainedAssertion;
|
|
68
|
+
}
|
|
69
|
+
function verifyStatementAsStatedContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
|
|
70
|
+
var statementVerifiedAsStatedContainedAssertion = false;
|
|
71
|
+
if (!derived) {
|
|
72
|
+
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
73
|
+
localContext.trace("Verifying the '".concat(containedAssertionString, "' stated statement as a contained assertion..."), containedAssertionNode);
|
|
74
|
+
var intrinsicLevel = localContext.isIntrinsicLevel();
|
|
75
|
+
if (intrinsicLevel) {
|
|
76
|
+
localContext.debug("The '".concat(containedAssertionString, "' stated statement as a contained assertion cannot be verified at intrinsic level."), containedAssertionNode);
|
|
77
|
+
} else {
|
|
78
|
+
var nonTerminalNode = containedAssertionNode, nonTerminalNodeVerified = _metaLevel.default.verifyNonTerminalNode(nonTerminalNode, localContext, function() {
|
|
79
|
+
var verifiedAhead = true;
|
|
80
|
+
return verifiedAhead;
|
|
81
|
+
});
|
|
82
|
+
statementVerifiedAsStatedContainedAssertion = nonTerminalNodeVerified; ///
|
|
83
|
+
}
|
|
84
|
+
if (statementVerifiedAsStatedContainedAssertion) {
|
|
85
|
+
localContext.debug("...verified the '".concat(containedAssertionString, "' stated statement as a contained assertion."), containedAssertionNode);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return statementVerifiedAsStatedContainedAssertion;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvY29udGFpbmVkQXNzZXJ0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWV0YUxldmVsTm9kZVZlcmlmaWVyIGZyb20gXCIuLi92ZXJpZmllci9ub2RlL21ldGFMZXZlbFwiO1xuXG5pbXBvcnQgeyBpc1N0YXRlbWVudE5lZ2F0ZWQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3ZlcmlmeVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC90ZXJtIVwiKSxcbiAgICAgIHN0YXRlbWVudFRlcm1Ob2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9zdGF0ZW1lbnQvbWV0YUFyZ3VtZW50L3N0YXRlbWVudC8vdGVybVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlbWVudFZlcmlmaWVkQXNDb250YWluZWRBc3NlcnRpb247XG5cbiAgY29uc3Qgc3RhdGVtZW50Q29udGFpbmVkQXNzZXJ0aW9uID0gaXNTdGF0ZW1lbnRDb250YWluZWRBc3NlcnRpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgaWYgKHN0YXRlbWVudENvbnRhaW5lZEFzc2VydGlvbikge1xuICAgIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50RnVuY3Rpb25zID0gW1xuICAgICAgdmVyaWZ5U3RhdGVtZW50QXNEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uLFxuICAgICAgdmVyaWZ5U3RhdGVtZW50QXNTdGF0ZWRDb250YWluZWRBc3NlcnRpb25cbiAgICBdO1xuXG4gICAgc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbiA9IHN0YXRlbWVudEZ1bmN0aW9ucy5zb21lKChzdGF0ZW1lbnRGdW5jdGlvbikgPT4ge1xuICAgICAgY29uc3Qgc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbiA9IHN0YXRlbWVudEZ1bmN0aW9uKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWRBc0NvbnRhaW5lZEFzc2VydGlvbikge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZEFzQ29udGFpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZW1lbnQgYXMgYSBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZEFzQ29udGFpbmVkQXNzZXJ0aW9uO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnRBc0Rlcml2ZWRDb250YWluZWRBc3NlcnRpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRDb250YWluZWRBc3NlcnRpb24gPSBmYWxzZTtcblxuICBpZiAoZGVyaXZlZCkge1xuICAgIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBzdGF0ZW1lbnQgYXMgYSBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBzdGF0ZW1lbnROZWdhdGVkID0gaXNTdGF0ZW1lbnROZWdhdGVkKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeShjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICBuZWdhdGVkID0gc3RhdGVtZW50TmVnYXRlZCwgLy8vXG4gICAgICAgICAgc3RhdGVtZW50VGVybU5vZGVzID0gc3RhdGVtZW50VGVybU5vZGVzUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdGVybU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlID0gc3RhdGVtZW50VGVybU5vZGVzLnNvbWUoKHN0YXRlbWVudFRlcm1Ob2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0ZXJtTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUgPSB0ZXJtTm9kZS5tYXRjaChzdGF0ZW1lbnRUZXJtTm9kZSk7XG5cbiAgICAgICAgICAgIGlmICh0ZXJtTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG5cbiAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgIGlmICh0ZXJtTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRDb250YWluZWRBc3NlcnRpb24gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChuZWdhdGVkKSB7XG4gICAgICBpZiAoIXRlcm1Ob2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSkge1xuICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZENvbnRhaW5lZEFzc2VydGlvbiA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQ29udGFpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBkZXJpdmVkIHN0YXRlbWVudCBhcyBhIGNvbnRhaW5lZCBhc3NlcnRpb24uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQ29udGFpbmVkQXNzZXJ0aW9uO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnRBc1N0YXRlZENvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZW1lbnRWZXJpZmllZEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uID0gZmFsc2U7XG5cbiAgaWYgKCFkZXJpdmVkKSB7XG4gICAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgaW50cmluc2ljTGV2ZWwgPSBsb2NhbENvbnRleHQuaXNJbnRyaW5zaWNMZXZlbCgpO1xuXG4gICAgaWYgKGludHJpbnNpY0xldmVsKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbiBjYW5ub3QgYmUgdmVyaWZpZWQgYXQgaW50cmluc2ljIGxldmVsLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBjb250YWluZWRBc3NlcnRpb25Ob2RlLCAvLy9cbiAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbWV0YUxldmVsTm9kZVZlcmlmaWVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBzdGF0ZW1lbnRWZXJpZmllZEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICAgIH1cblxuICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgc3RhdGVtZW50IGFzIGEgY29udGFpbmVkIGFzc2VydGlvbi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVtZW50VmVyaWZpZWRBc1N0YXRlZENvbnRhaW5lZEFzc2VydGlvbjtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlDb250YWluZWRBc3NlcnRpb24iLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50VGVybU5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwiY29udGFpbmVkQXNzZXJ0aW9uTm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsInN0YXRlbWVudFZlcmlmaWVkQXNDb250YWluZWRBc3NlcnRpb24iLCJzdGF0ZW1lbnRDb250YWluZWRBc3NlcnRpb24iLCJpc1N0YXRlbWVudENvbnRhaW5lZEFzc2VydGlvbiIsImNvbnRhaW5lZEFzc2VydGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwic3RhdGVtZW50RnVuY3Rpb25zIiwidmVyaWZ5U3RhdGVtZW50QXNEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uIiwidmVyaWZ5U3RhdGVtZW50QXNTdGF0ZWRDb250YWluZWRBc3NlcnRpb24iLCJzb21lIiwic3RhdGVtZW50RnVuY3Rpb24iLCJkZWJ1ZyIsInN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQ29udGFpbmVkQXNzZXJ0aW9uIiwic3RhdGVtZW50TmVnYXRlZCIsImlzU3RhdGVtZW50TmVnYXRlZCIsInRlcm1Ob2RlIiwibmVnYXRlZCIsInN0YXRlbWVudFRlcm1Ob2RlcyIsInRlcm1Ob2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSIsInN0YXRlbWVudFRlcm1Ob2RlIiwibWF0Y2giLCJzdGF0ZW1lbnRWZXJpZmllZEFzU3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uIiwiaW50cmluc2ljTGV2ZWwiLCJpc0ludHJpbnNpY0xldmVsIiwibm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJtZXRhTGV2ZWxOb2RlVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJ2ZXJpZmllZEFoZWFkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7O2dFQVJVO3NCQUVDO3FCQUNHOzs7Ozs7QUFFdEMsSUFBTUMsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLHFCQUMxQkMsMEJBQTBCQyxJQUFBQSxpQkFBVSxFQUFDO0FBRTVCLFNBQVNKLHlCQUF5Qkssc0JBQXNCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQ3pHLElBQUlDO0lBRUosSUFBTUMsOEJBQThCQyw4QkFBOEJOO0lBRWxFLElBQUlLLDZCQUE2QjtRQUMvQixJQUFNRSwyQkFBMkJKLGFBQWFLLFlBQVksQ0FBQ1I7UUFFM0RHLGFBQWFNLEtBQUssQ0FBQyxBQUFDLGtCQUEwQyxPQUF6QkYsMEJBQXlCLDRDQUEwQ1A7UUFFeEcsSUFBTVUscUJBQXFCO1lBQ3pCQztZQUNBQztTQUNEO1FBRURSLHdDQUF3Q00sbUJBQW1CRyxJQUFJLENBQUMsU0FBQ0M7WUFDL0QsSUFBTVYsd0NBQXdDVSxrQkFBa0JkLHdCQUF3QkMsYUFBYUMsU0FBU0M7WUFFOUcsSUFBSUMsdUNBQXVDO2dCQUN6QyxPQUFPO1lBQ1Q7UUFDRjtRQUVBLElBQUlBLHVDQUF1QztZQUN6Q0QsYUFBYVksS0FBSyxDQUFDLEFBQUMsb0JBQTRDLE9BQXpCUiwwQkFBeUIsMENBQXdDUDtRQUMxRztJQUNGO0lBRUEsT0FBT0k7QUFDVDtBQUVBLFNBQVNPLDJDQUEyQ1gsc0JBQXNCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQzVHLElBQUlhLCtDQUErQztJQUVuRCxJQUFJZCxTQUFTO1FBQ1gsSUFBTUssMkJBQTJCSixhQUFhSyxZQUFZLENBQUNSO1FBRTNERyxhQUFhTSxLQUFLLENBQUMsQUFBQyxrQkFBMEMsT0FBekJGLDBCQUF5QixvREFBa0RQO1FBRWhILElBQU1pQixtQkFBbUJDLElBQUFBLDBCQUFrQixFQUFDbEIseUJBQ3RDbUIsV0FBV3ZCLGNBQWNJLHlCQUN6Qm9CLFVBQVVILGtCQUNWSSxxQkFBcUJ2Qix3QkFBd0JFLHlCQUM3Q3NCLDBDQUEwQ0QsbUJBQW1CUixJQUFJLENBQUMsU0FBQ1U7WUFDakUsSUFBTUQsMENBQTBDSCxTQUFTSyxLQUFLLENBQUNEO1lBRS9ELElBQUlELHlDQUF5QztnQkFDM0MsT0FBTztZQUNUO1FBQ0Y7UUFFTixJQUFJLENBQUNGLFNBQVM7WUFDWixJQUFJRSx5Q0FBeUM7Z0JBQzNDTiwrQ0FBK0M7WUFDakQ7UUFDRjtRQUVBLElBQUlJLFNBQVM7WUFDWCxJQUFJLENBQUNFLHlDQUF5QztnQkFDNUNOLCtDQUErQztZQUNqRDtRQUNGO1FBRUEsSUFBSUEsOENBQThDO1lBQ2hEYixhQUFhWSxLQUFLLENBQUMsQUFBQyxvQkFBNEMsT0FBekJSLDBCQUF5QixrREFBZ0RQO1FBQ2xIO0lBQ0Y7SUFFQSxPQUFPZ0I7QUFDVDtBQUVBLFNBQVNKLDBDQUEwQ1osc0JBQXNCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQzNHLElBQUlzQiw4Q0FBOEM7SUFFbEQsSUFBSSxDQUFDdkIsU0FBUztRQUNaLElBQU1LLDJCQUEyQkosYUFBYUssWUFBWSxDQUFDUjtRQUUzREcsYUFBYU0sS0FBSyxDQUFDLEFBQUMsa0JBQTBDLE9BQXpCRiwwQkFBeUIsbURBQWlEUDtRQUUvRyxJQUFNMEIsaUJBQWlCdkIsYUFBYXdCLGdCQUFnQjtRQUVwRCxJQUFJRCxnQkFBZ0I7WUFDbEJ2QixhQUFhWSxLQUFLLENBQUMsQUFBQyxRQUFnQyxPQUF6QlIsMEJBQXlCLHVGQUFxRlA7UUFDM0ksT0FBTztZQUNMLElBQU00QixrQkFBa0I1Qix3QkFDbEI2QiwwQkFBMEJDLGtCQUFxQixDQUFDQyxxQkFBcUIsQ0FBQ0gsaUJBQWlCekIsY0FBYztnQkFDbkcsSUFBTTZCLGdCQUFnQjtnQkFFdEIsT0FBT0E7WUFDVDtZQUVOUCw4Q0FBOENJLHlCQUF5QixHQUFHO1FBQzVFO1FBRUEsSUFBSUosNkNBQTZDO1lBQy9DdEIsYUFBYVksS0FBSyxDQUFDLEFBQUMsb0JBQTRDLE9BQXpCUiwwQkFBeUIsaURBQStDUDtRQUNqSDtJQUNGO0lBRUEsT0FBT3lCO0FBQ1QifQ==
|
|
@@ -17,20 +17,20 @@ function _interop_require_default(obj) {
|
|
|
17
17
|
default: obj
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
|
-
var referenceNodeQuery = (0, _query.nodeQuery)("/declaration/reference!"),
|
|
20
|
+
var referenceNodeQuery = (0, _query.nodeQuery)("/declaration/reference!"), statementNodeQuery = (0, _query.nodeQuery)("/declaration/statement!"), metavariableNodeQuery = (0, _query.nodeQuery)("/reference/metavariable!");
|
|
21
21
|
function verifyDeclaration(declarationNode, declarations, localContext) {
|
|
22
22
|
var declarationVerified = false;
|
|
23
23
|
var declarationString = localContext.nodeAsString(declarationNode);
|
|
24
24
|
localContext.trace("Verifying the '".concat(declarationString, "' declaration..."), declarationNode);
|
|
25
25
|
var referenceNode = referenceNodeQuery(declarationNode), referenceVerified = verifyReference(referenceNode, localContext);
|
|
26
26
|
if (referenceVerified) {
|
|
27
|
-
var
|
|
28
|
-
var
|
|
27
|
+
var statementNode = statementNodeQuery(declarationNode);
|
|
28
|
+
var verifyStatement = _metaLevel.default.verifyStatement, derived = false, assignments = [], statementVerified = verifyStatement(statementNode, assignments, derived, localContext, function() {
|
|
29
29
|
var verifiedAhead = true;
|
|
30
30
|
return verifiedAhead;
|
|
31
31
|
});
|
|
32
|
-
if (
|
|
33
|
-
var metavariableNode = metavariableNodeQuery(referenceNode), declaration = _declaration.default.
|
|
32
|
+
if (statementVerified) {
|
|
33
|
+
var metavariableNode = metavariableNodeQuery(referenceNode), declaration = _declaration.default.fromMetavariableNodeAndStatementNode(metavariableNode, statementNode);
|
|
34
34
|
declarations.push(declaration);
|
|
35
35
|
declarationVerified = true;
|
|
36
36
|
}
|
|
@@ -44,7 +44,7 @@ function verifyReference(referenceNode, localContext) {
|
|
|
44
44
|
var referenceVerified = false;
|
|
45
45
|
var referenceString = localContext.nodeAsString(referenceNode);
|
|
46
46
|
localContext.trace("Verifying the '".concat(referenceString, "' reference..."), referenceNode);
|
|
47
|
-
var metavariableNode = metavariableNodeQuery(referenceNode), metavariable = localContext.findMetavariableByMetavariableNode(metavariableNode
|
|
47
|
+
var metavariableNode = metavariableNodeQuery(referenceNode), metavariable = localContext.findMetavariableByMetavariableNode(metavariableNode);
|
|
48
48
|
if (metavariable !== null) {
|
|
49
49
|
var metaType = metavariable.getMetaType();
|
|
50
50
|
if (metaType === _reference.default) {
|
|
@@ -62,4 +62,4 @@ function verifyReference(referenceNode, localContext) {
|
|
|
62
62
|
return referenceVerified;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZGVjbGFyYXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBEZWNsYXJhdGlvbiBmcm9tIFwiLi4vZGVjbGFyYXRpb25cIlxuaW1wb3J0IHJlZmVyZW5jZU1ldGFUeXBlIGZyb20gXCIuLi9tZXRhVHlwZS9yZWZlcmVuY2VcIjtcbmltcG9ydCBtZXRhTGV2ZWxOb2RlVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyL25vZGUvbWV0YUxldmVsXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgcmVmZXJlbmNlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2RlY2xhcmF0aW9uL3JlZmVyZW5jZSFcIiksXG4gICAgICBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZGVjbGFyYXRpb24vc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9yZWZlcmVuY2UvbWV0YXZhcmlhYmxlIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5RGVjbGFyYXRpb24oZGVjbGFyYXRpb25Ob2RlLCBkZWNsYXJhdGlvbnMsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVjbGFyYXRpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGRlY2xhcmF0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWNsYXJhdGlvbk5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWNsYXJhdGlvblN0cmluZ30nIGRlY2xhcmF0aW9uLi4uYCwgZGVjbGFyYXRpb25Ob2RlKTtcblxuICBjb25zdCByZWZlcmVuY2VOb2RlID0gcmVmZXJlbmNlTm9kZVF1ZXJ5KGRlY2xhcmF0aW9uTm9kZSksXG4gICAgICAgIHJlZmVyZW5jZVZlcmlmaWVkID0gdmVyaWZ5UmVmZXJlbmNlKHJlZmVyZW5jZU5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgaWYgKHJlZmVyZW5jZVZlcmlmaWVkKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeShkZWNsYXJhdGlvbk5vZGUpO1xuXG4gICAgY29uc3QgeyB2ZXJpZnlTdGF0ZW1lbnQgfSA9IG1ldGFMZXZlbE5vZGVWZXJpZmllcixcbiAgICAgICAgICBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgfSk7XG5cbiAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkocmVmZXJlbmNlTm9kZSksXG4gICAgICAgICAgICBkZWNsYXJhdGlvbiA9IERlY2xhcmF0aW9uLmZyb21NZXRhdmFyaWFibGVOb2RlQW5kU3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOb2RlLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgZGVjbGFyYXRpb25zLnB1c2goZGVjbGFyYXRpb24pO1xuXG4gICAgICBkZWNsYXJhdGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBpZiAoZGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlY2xhcmF0aW9uU3RyaW5nfScgZGVjbGFyYXRpb24uYCwgZGVjbGFyYXRpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBkZWNsYXJhdGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlSZWZlcmVuY2UocmVmZXJlbmNlTm9kZSwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCByZWZlcmVuY2VWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IHJlZmVyZW5jZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcocmVmZXJlbmNlTm9kZSk7XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3JlZmVyZW5jZVN0cmluZ30nIHJlZmVyZW5jZS4uLmAsIHJlZmVyZW5jZU5vZGUpO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkocmVmZXJlbmNlTm9kZSksXG4gICAgICAgIG1ldGF2YXJpYWJsZSA9IGxvY2FsQ29udGV4dC5maW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGlmIChtZXRhdmFyaWFibGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBtZXRhVHlwZSA9IG1ldGF2YXJpYWJsZS5nZXRNZXRhVHlwZSgpO1xuXG4gICAgaWYgKG1ldGFUeXBlID09PSByZWZlcmVuY2VNZXRhVHlwZSkge1xuICAgICAgcmVmZXJlbmNlVmVyaWZpZWQgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCByZWZlcmVuY2VNZXRhVHlwZU5hbWUgPSByZWZlcmVuY2VNZXRhVHlwZS5nZXROYW1lKCksXG4gICAgICAgICAgICBtZXRhVHlwZVN0cmluZyA9IG1ldGFUeXBlLmFzU3RyaW5nKCk7XG5cbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgVGhlICcke3JlZmVyZW5jZVN0cmluZ30nIG1ldGF2YXJpYWJsZSdzIG1ldGEtdHlwZSBpcyAnJHttZXRhVHlwZVN0cmluZ30nIHdoZW4gaXQgc2hvdWxkIGJlICcke3JlZmVyZW5jZU1ldGFUeXBlTmFtZX0nLmAsIHJlZmVyZW5jZU5vZGUpO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZSAnJHtyZWZlcmVuY2VTdHJpbmd9JyBtZXRhdmFyaWFibGUgaXMgbm90IHByZXNlbnQnLmAsIHJlZmVyZW5jZU5vZGUpO1xuICB9XG5cbiAgaWYgKHJlZmVyZW5jZVZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7cmVmZXJlbmNlU3RyaW5nfScgcmVmZXJlbmNlLmAsIHJlZmVyZW5jZU5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIHJlZmVyZW5jZVZlcmlmaWVkO1xufSJdLCJuYW1lcyI6WyJ2ZXJpZnlEZWNsYXJhdGlvbiIsInJlZmVyZW5jZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsImRlY2xhcmF0aW9uTm9kZSIsImRlY2xhcmF0aW9ucyIsImxvY2FsQ29udGV4dCIsImRlY2xhcmF0aW9uVmVyaWZpZWQiLCJkZWNsYXJhdGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwicmVmZXJlbmNlTm9kZSIsInJlZmVyZW5jZVZlcmlmaWVkIiwidmVyaWZ5UmVmZXJlbmNlIiwic3RhdGVtZW50Tm9kZSIsInZlcmlmeVN0YXRlbWVudCIsIm1ldGFMZXZlbE5vZGVWZXJpZmllciIsImRlcml2ZWQiLCJhc3NpZ25tZW50cyIsInN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZpZWRBaGVhZCIsIm1ldGF2YXJpYWJsZU5vZGUiLCJkZWNsYXJhdGlvbiIsIkRlY2xhcmF0aW9uIiwiZnJvbU1ldGF2YXJpYWJsZU5vZGVBbmRTdGF0ZW1lbnROb2RlIiwicHVzaCIsImRlYnVnIiwicmVmZXJlbmNlU3RyaW5nIiwibWV0YXZhcmlhYmxlIiwiZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFUeXBlIiwiZ2V0TWV0YVR5cGUiLCJyZWZlcmVuY2VNZXRhVHlwZSIsInJlZmVyZW5jZU1ldGFUeXBlTmFtZSIsImdldE5hbWUiLCJtZXRhVHlwZVN0cmluZyIsImFzU3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFZQTs7O2VBQXdCQTs7O2tFQVZBO2dFQUNNO2dFQUNJO3FCQUVSOzs7Ozs7QUFFMUIsSUFBTUMscUJBQXFCQyxJQUFBQSxnQkFBUyxFQUFDLDRCQUMvQkMscUJBQXFCRCxJQUFBQSxnQkFBUyxFQUFDLDRCQUMvQkUsd0JBQXdCRixJQUFBQSxnQkFBUyxFQUFDO0FBRXpCLFNBQVNGLGtCQUFrQkssZUFBZSxFQUFFQyxZQUFZLEVBQUVDLFlBQVk7SUFDbkYsSUFBSUMsc0JBQXNCO0lBRTFCLElBQU1DLG9CQUFvQkYsYUFBYUcsWUFBWSxDQUFDTDtJQUVwREUsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQW1DLE9BQWxCRixtQkFBa0IscUJBQW1CSjtJQUUxRSxJQUFNTyxnQkFBZ0JYLG1CQUFtQkksa0JBQ25DUSxvQkFBb0JDLGdCQUFnQkYsZUFBZUw7SUFFekQsSUFBSU0sbUJBQW1CO1FBQ3JCLElBQU1FLGdCQUFnQlosbUJBQW1CRTtRQUV6QyxJQUFNLEFBQUVXLGtCQUFvQkMsa0JBQXFCLENBQXpDRCxpQkFDRkUsVUFBVSxPQUNWQyxjQUFjLEVBQUUsRUFDaEJDLG9CQUFvQkosZ0JBQWdCRCxlQUFlSSxhQUFhRCxTQUFTWCxjQUFjO1lBQ3JGLElBQU1jLGdCQUFnQjtZQUV0QixPQUFPQTtRQUNUO1FBRU4sSUFBSUQsbUJBQW1CO1lBQ3JCLElBQU1FLG1CQUFtQmxCLHNCQUFzQlEsZ0JBQ3pDVyxjQUFjQyxvQkFBVyxDQUFDQyxvQ0FBb0MsQ0FBQ0gsa0JBQWtCUDtZQUV2RlQsYUFBYW9CLElBQUksQ0FBQ0g7WUFFbEJmLHNCQUFzQjtRQUN4QjtJQUNGO0lBRUEsSUFBSUEscUJBQXFCO1FBQ3ZCRCxhQUFhb0IsS0FBSyxDQUFDLEFBQUMsb0JBQXFDLE9BQWxCbEIsbUJBQWtCLG1CQUFpQko7SUFDNUU7SUFFQSxPQUFPRztBQUNUO0FBRUEsU0FBU00sZ0JBQWdCRixhQUFhLEVBQUVMLFlBQVk7SUFDbEQsSUFBSU0sb0JBQW9CO0lBRXhCLElBQU1lLGtCQUFrQnJCLGFBQWFHLFlBQVksQ0FBQ0U7SUFFbERMLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUFpQyxPQUFoQmlCLGlCQUFnQixtQkFBaUJoQjtJQUV0RSxJQUFNVSxtQkFBbUJsQixzQkFBc0JRLGdCQUN6Q2lCLGVBQWV0QixhQUFhdUIsa0NBQWtDLENBQUNSO0lBRXJFLElBQUlPLGlCQUFpQixNQUFNO1FBQ3pCLElBQU1FLFdBQVdGLGFBQWFHLFdBQVc7UUFFekMsSUFBSUQsYUFBYUUsa0JBQWlCLEVBQUU7WUFDbENwQixvQkFBb0I7UUFDdEIsT0FBTztZQUNMLElBQU1xQix3QkFBd0JELGtCQUFpQixDQUFDRSxPQUFPLElBQ2pEQyxpQkFBaUJMLFNBQVNNLFFBQVE7WUFFeEM5QixhQUFhb0IsS0FBSyxDQUFDLEFBQUMsUUFBd0RTLE9BQWpEUixpQkFBZ0IsbUNBQXVFTSxPQUF0Q0UsZ0JBQWUseUJBQTZDLE9BQXRCRix1QkFBc0IsT0FBS3RCO1FBQy9JO0lBQ0YsT0FBTztRQUNMTCxhQUFhb0IsS0FBSyxDQUFDLEFBQUMsUUFBdUIsT0FBaEJDLGlCQUFnQixvQ0FBa0NoQjtJQUMvRTtJQUVBLElBQUlDLG1CQUFtQjtRQUNyQk4sYUFBYW9CLEtBQUssQ0FBQyxBQUFDLG9CQUFtQyxPQUFoQkMsaUJBQWdCLGlCQUFlaEI7SUFDeEU7SUFFQSxPQUFPQztBQUNUIn0=
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return verifyDefinedAssertion;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _term = /*#__PURE__*/ _interop_require_default(require("./term"));
|
|
12
|
+
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../verifier/node/metaLevel"));
|
|
13
|
+
var _array = require("../utilities/array");
|
|
14
|
+
var _constants = require("../constants");
|
|
15
|
+
var _query = require("../utilities/query");
|
|
16
|
+
var _verify = require("../utilities/verify");
|
|
17
|
+
function _interop_require_default(obj) {
|
|
18
|
+
return obj && obj.__esModule ? obj : {
|
|
19
|
+
default: obj
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
var termNodeQuery = (0, _query.nodeQuery)("/statement/term!"), variableNodeQuery = (0, _query.nodeQuery)("/statement/term/variable!");
|
|
23
|
+
function verifyDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
|
|
24
|
+
var statementVerifiedAsDefinedAssertion = false;
|
|
25
|
+
var statementDefinedAssertion = isStatementDefinedAssertion(definedAssertionNode);
|
|
26
|
+
if (statementDefinedAssertion) {
|
|
27
|
+
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
28
|
+
localContext.trace("Verifying the '".concat(definedAssertionString, "' statement as a defined assertion..."), definedAssertionNode);
|
|
29
|
+
var definedAssertionFunctions = [
|
|
30
|
+
verifyDerivedStatementAsDefinedAssertion,
|
|
31
|
+
verifyStatedStatementAsDefinedAssertion
|
|
32
|
+
];
|
|
33
|
+
statementVerifiedAsDefinedAssertion = definedAssertionFunctions.some(function(definedAssertionFunction) {
|
|
34
|
+
var statementVerifiedAsDefinedAssertion = definedAssertionFunction(definedAssertionNode, assignments, derived, localContext);
|
|
35
|
+
if (statementVerifiedAsDefinedAssertion) {
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
if (statementVerifiedAsDefinedAssertion) {
|
|
40
|
+
localContext.debug("...verified the '".concat(definedAssertionString, "' statement as a defined assertion."), definedAssertionNode);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return statementVerifiedAsDefinedAssertion;
|
|
44
|
+
}
|
|
45
|
+
function verifyDerivedStatementAsDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
|
|
46
|
+
var derivedStatementVerifiedAsDefeindAssertion = false;
|
|
47
|
+
if (derived) {
|
|
48
|
+
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
49
|
+
localContext.trace("Verifying the '".concat(definedAssertionString, "' derived statement as a defined assertion..."), definedAssertionNode);
|
|
50
|
+
var statementNegated = (0, _verify.isAssertionNegated)(definedAssertionNode), variableNode = variableNodeQuery(definedAssertionNode), termNode = termNodeQuery(definedAssertionNode);
|
|
51
|
+
if (false) {
|
|
52
|
+
///
|
|
53
|
+
} else if (variableNode !== null) {
|
|
54
|
+
var variable = localContext.findVariableByVariableNode(variableNode);
|
|
55
|
+
if (variable !== null) {
|
|
56
|
+
var variableDefined = localContext.isVariableDefined(variable);
|
|
57
|
+
if (!statementNegated) {
|
|
58
|
+
if (variableDefined) {
|
|
59
|
+
derivedStatementVerifiedAsDefeindAssertion = true;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
if (statementNegated) {
|
|
63
|
+
if (!variableDefined) {
|
|
64
|
+
derivedStatementVerifiedAsDefeindAssertion = true;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
} else if (termNode !== null) {
|
|
69
|
+
var terms = [], termVerified = (0, _term.default)(termNode, terms, localContext, function() {
|
|
70
|
+
var verifiedAhead = true;
|
|
71
|
+
return verifiedAhead;
|
|
72
|
+
});
|
|
73
|
+
if (termVerified) {
|
|
74
|
+
var firstTerm = (0, _array.first)(terms), term = firstTerm, termGrounded = localContext.isTermGrounded(term);
|
|
75
|
+
if (!statementNegated) {
|
|
76
|
+
if (termGrounded) {
|
|
77
|
+
derivedStatementVerifiedAsDefeindAssertion = true;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (statementNegated) {
|
|
81
|
+
if (!termGrounded) {
|
|
82
|
+
derivedStatementVerifiedAsDefeindAssertion = true;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
if (derivedStatementVerifiedAsDefeindAssertion) {
|
|
88
|
+
localContext.debug("...verified the '".concat(definedAssertionString, "' derived statement as a defined assertion."), definedAssertionNode);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return derivedStatementVerifiedAsDefeindAssertion;
|
|
92
|
+
}
|
|
93
|
+
function verifyStatedStatementAsDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
|
|
94
|
+
var statedStatementVerifiedAsDefinedAssertion = false;
|
|
95
|
+
if (!derived) {
|
|
96
|
+
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
97
|
+
localContext.trace("Verifying the '".concat(definedAssertionString, "' stated statement as a defined assertion..."), definedAssertionNode);
|
|
98
|
+
var intrinsicLevel = localContext.isIntrinsicLevel();
|
|
99
|
+
if (intrinsicLevel) {
|
|
100
|
+
localContext.debug("The '".concat(definedAssertionString, "' stated statement as a defined assertion cannot be verified at intrinsic level."), definedAssertionNode);
|
|
101
|
+
} else {
|
|
102
|
+
var nonTerminalNode = definedAssertionNode, nonTerminalNodeVerified = _metaLevel.default.verifyNonTerminalNode(nonTerminalNode, localContext, function() {
|
|
103
|
+
var verifiedAhead = true;
|
|
104
|
+
return verifiedAhead;
|
|
105
|
+
});
|
|
106
|
+
statedStatementVerifiedAsDefinedAssertion = nonTerminalNodeVerified; ///
|
|
107
|
+
}
|
|
108
|
+
if (statedStatementVerifiedAsDefinedAssertion) {
|
|
109
|
+
localContext.debug("...verified the '".concat(definedAssertionString, "' stated statement as a defined assertion."), definedAssertionNode);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return statedStatementVerifiedAsDefinedAssertion;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZGVmaW5lZEFzc2VydGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVRlcm0gZnJvbSBcIi4vdGVybVwiO1xuaW1wb3J0IG1ldGFMZXZlbE5vZGVWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXIvbm9kZS9tZXRhTGV2ZWxcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBERUZJTkVEIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgaXNBc3NlcnRpb25OZWdhdGVkIH0gZnJvbSBcIi4uL3V0aWxpdGllcy92ZXJpZnlcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvdGVybSFcIiksXG4gICAgICB2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQvdGVybS92YXJpYWJsZSFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeURlZmluZWRBc3NlcnRpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQXNzZXJ0aW9uID0gZmFsc2U7XG5cbiAgY29uc3Qgc3RhdGVtZW50RGVmaW5lZEFzc2VydGlvbiA9IGlzU3RhdGVtZW50RGVmaW5lZEFzc2VydGlvbihkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgaWYgKHN0YXRlbWVudERlZmluZWRBc3NlcnRpb24pIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlbWVudCBhcyBhIGRlZmluZWQgYXNzZXJ0aW9uLi4uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgZGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgICAgIHZlcmlmeURlcml2ZWRTdGF0ZW1lbnRBc0RlZmluZWRBc3NlcnRpb24sXG4gICAgICB2ZXJpZnlTdGF0ZWRTdGF0ZW1lbnRBc0RlZmluZWRBc3NlcnRpb25cbiAgICBdO1xuXG4gICAgc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24gPSBkZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zLnNvbWUoKGRlZmluZWRBc3NlcnRpb25GdW5jdGlvbikgPT4ge1xuICAgICAgY29uc3Qgc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24gPSBkZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24pIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24pIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZW1lbnQgYXMgYSBkZWZpbmVkIGFzc2VydGlvbi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQXNzZXJ0aW9uO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlEZXJpdmVkU3RhdGVtZW50QXNEZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkU3RhdGVtZW50VmVyaWZpZWRBc0RlZmVpbmRBc3NlcnRpb24gPSBmYWxzZTtcblxuICBpZiAoZGVyaXZlZCkge1xuICAgIGNvbnN0IGRlZmluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBzdGF0ZW1lbnQgYXMgYSBkZWZpbmVkIGFzc2VydGlvbi4uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGNvbnN0IHN0YXRlbWVudE5lZ2F0ZWQgPSBpc0Fzc2VydGlvbk5lZ2F0ZWQoZGVmaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KGRlZmluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKHZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKTtcblxuICAgICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHZhcmlhYmxlRGVmaW5lZCA9IGxvY2FsQ29udGV4dC5pc1ZhcmlhYmxlRGVmaW5lZCh2YXJpYWJsZSk7XG5cbiAgICAgICAgaWYgKCFzdGF0ZW1lbnROZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKHZhcmlhYmxlRGVmaW5lZCkge1xuICAgICAgICAgICAgZGVyaXZlZFN0YXRlbWVudFZlcmlmaWVkQXNEZWZlaW5kQXNzZXJ0aW9uID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc3RhdGVtZW50TmVnYXRlZCkge1xuICAgICAgICAgIGlmICghdmFyaWFibGVEZWZpbmVkKSB7XG4gICAgICAgICAgICBkZXJpdmVkU3RhdGVtZW50VmVyaWZpZWRBc0RlZmVpbmRBc3NlcnRpb24gPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGVybU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHRlcm1zID0gW10sXG4gICAgICAgICAgICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHRlcm1Ob2RlLCB0ZXJtcywgbG9jYWxDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgIGlmICh0ZXJtVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgZmlyc3RUZXJtID0gZmlyc3QodGVybXMpLFxuICAgICAgICAgICAgICB0ZXJtID0gZmlyc3RUZXJtLCAvLy9cbiAgICAgICAgICAgICAgdGVybUdyb3VuZGVkID0gbG9jYWxDb250ZXh0LmlzVGVybUdyb3VuZGVkKHRlcm0pO1xuXG4gICAgICAgIGlmICghc3RhdGVtZW50TmVnYXRlZCkge1xuICAgICAgICAgIGlmICh0ZXJtR3JvdW5kZWQpIHtcbiAgICAgICAgICAgIGRlcml2ZWRTdGF0ZW1lbnRWZXJpZmllZEFzRGVmZWluZEFzc2VydGlvbiA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHN0YXRlbWVudE5lZ2F0ZWQpIHtcbiAgICAgICAgICBpZiAoIXRlcm1Hcm91bmRlZCkge1xuICAgICAgICAgICAgZGVyaXZlZFN0YXRlbWVudFZlcmlmaWVkQXNEZWZlaW5kQXNzZXJ0aW9uID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZGVyaXZlZFN0YXRlbWVudFZlcmlmaWVkQXNEZWZlaW5kQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBzdGF0ZW1lbnQgYXMgYSBkZWZpbmVkIGFzc2VydGlvbi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWRTdGF0ZW1lbnRWZXJpZmllZEFzRGVmZWluZEFzc2VydGlvbjtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5U3RhdGVkU3RhdGVtZW50QXNEZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWRTdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZEFzc2VydGlvbiA9IGZhbHNlO1xuXG4gIGlmICghZGVyaXZlZCkge1xuICAgIGNvbnN0IGRlZmluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIHN0YXRlbWVudCBhcyBhIGRlZmluZWQgYXNzZXJ0aW9uLi4uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgaW50cmluc2ljTGV2ZWwgPSBsb2NhbENvbnRleHQuaXNJbnRyaW5zaWNMZXZlbCgpO1xuXG4gICAgaWYgKGludHJpbnNpY0xldmVsKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIHN0YXRlbWVudCBhcyBhIGRlZmluZWQgYXNzZXJ0aW9uIGNhbm5vdCBiZSB2ZXJpZmllZCBhdCBpbnRyaW5zaWMgbGV2ZWwuYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG1ldGFMZXZlbE5vZGVWZXJpZmllci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBsb2NhbENvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgc3RhdGVkU3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24gPSBub25UZXJtaW5hbE5vZGVWZXJpZmllZDsgLy8vXG4gICAgfVxuXG4gICAgaWYgKHN0YXRlZFN0YXRlbWVudFZlcmlmaWVkQXNEZWZpbmVkQXNzZXJ0aW9uKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIHN0YXRlbWVudCBhcyBhIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkU3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb247XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5RGVmaW5lZEFzc2VydGlvbiIsInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ2YXJpYWJsZU5vZGVRdWVyeSIsImRlZmluZWRBc3NlcnRpb25Ob2RlIiwiYXNzaWdubWVudHMiLCJkZXJpdmVkIiwibG9jYWxDb250ZXh0Iiwic3RhdGVtZW50VmVyaWZpZWRBc0RlZmluZWRBc3NlcnRpb24iLCJzdGF0ZW1lbnREZWZpbmVkQXNzZXJ0aW9uIiwiaXNTdGF0ZW1lbnREZWZpbmVkQXNzZXJ0aW9uIiwiZGVmaW5lZEFzc2VydGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwiZGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyIsInZlcmlmeURlcml2ZWRTdGF0ZW1lbnRBc0RlZmluZWRBc3NlcnRpb24iLCJ2ZXJpZnlTdGF0ZWRTdGF0ZW1lbnRBc0RlZmluZWRBc3NlcnRpb24iLCJzb21lIiwiZGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkU3RhdGVtZW50VmVyaWZpZWRBc0RlZmVpbmRBc3NlcnRpb24iLCJzdGF0ZW1lbnROZWdhdGVkIiwiaXNBc3NlcnRpb25OZWdhdGVkIiwidmFyaWFibGVOb2RlIiwidGVybU5vZGUiLCJ2YXJpYWJsZSIsImZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlIiwidmFyaWFibGVEZWZpbmVkIiwiaXNWYXJpYWJsZURlZmluZWQiLCJ0ZXJtcyIsInRlcm1WZXJpZmllZCIsInZlcmlmeVRlcm0iLCJ2ZXJpZmllZEFoZWFkIiwiZmlyc3RUZXJtIiwiZmlyc3QiLCJ0ZXJtIiwidGVybUdyb3VuZGVkIiwiaXNUZXJtR3JvdW5kZWQiLCJzdGF0ZWRTdGF0ZW1lbnRWZXJpZmllZEFzRGVmaW5lZEFzc2VydGlvbiIsImludHJpbnNpY0xldmVsIiwiaXNJbnRyaW5zaWNMZXZlbCIsIm5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwibWV0YUxldmVsTm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFhQTs7O2VBQXdCQTs7OzJEQVhEO2dFQUNXO3FCQUVaO3lCQUNFO3FCQUNFO3NCQUNTOzs7Ozs7QUFFbkMsSUFBTUMsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLHFCQUMxQkMsb0JBQW9CRCxJQUFBQSxnQkFBUyxFQUFDO0FBRXJCLFNBQVNGLHVCQUF1Qkksb0JBQW9CLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQ3JHLElBQUlDLHNDQUFzQztJQUUxQyxJQUFNQyw0QkFBNEJDLDRCQUE0Qk47SUFFOUQsSUFBSUssMkJBQTJCO1FBQzdCLElBQU1FLHlCQUF5QkosYUFBYUssWUFBWSxDQUFDUjtRQUV6REcsYUFBYU0sS0FBSyxDQUFDLEFBQUMsa0JBQXdDLE9BQXZCRix3QkFBdUIsMENBQXdDUDtRQUVwRyxJQUFNVSw0QkFBNEI7WUFDaENDO1lBQ0FDO1NBQ0Q7UUFFRFIsc0NBQXNDTSwwQkFBMEJHLElBQUksQ0FBQyxTQUFDQztZQUNwRSxJQUFNVixzQ0FBc0NVLHlCQUF5QmQsc0JBQXNCQyxhQUFhQyxTQUFTQztZQUVqSCxJQUFJQyxxQ0FBcUM7Z0JBQ3ZDLE9BQU87WUFDVDtRQUNGO1FBRUEsSUFBSUEscUNBQXFDO1lBQ3ZDRCxhQUFhWSxLQUFLLENBQUMsQUFBQyxvQkFBMEMsT0FBdkJSLHdCQUF1Qix3Q0FBc0NQO1FBQ3RHO0lBQ0Y7SUFFQSxPQUFPSTtBQUNUO0FBRUEsU0FBU08seUNBQXlDWCxvQkFBb0IsRUFBRUMsV0FBVyxFQUFFQyxPQUFPLEVBQUVDLFlBQVk7SUFDeEcsSUFBSWEsNkNBQTZDO0lBRWpELElBQUlkLFNBQVM7UUFDWCxJQUFNSyx5QkFBeUJKLGFBQWFLLFlBQVksQ0FBQ1I7UUFFekRHLGFBQWFNLEtBQUssQ0FBQyxBQUFDLGtCQUF3QyxPQUF2QkYsd0JBQXVCLGtEQUFnRFA7UUFFNUcsSUFBTWlCLG1CQUFtQkMsSUFBQUEsMEJBQWtCLEVBQUNsQix1QkFDdENtQixlQUFlcEIsa0JBQWtCQyx1QkFDakNvQixXQUFXdkIsY0FBY0c7UUFFL0IsSUFBSSxPQUFPO1FBQ1QsR0FBRztRQUNMLE9BQU8sSUFBSW1CLGlCQUFpQixNQUFNO1lBQ2hDLElBQU1FLFdBQVdsQixhQUFhbUIsMEJBQTBCLENBQUNIO1lBRXpELElBQUlFLGFBQWEsTUFBTTtnQkFDckIsSUFBTUUsa0JBQWtCcEIsYUFBYXFCLGlCQUFpQixDQUFDSDtnQkFFdkQsSUFBSSxDQUFDSixrQkFBa0I7b0JBQ3JCLElBQUlNLGlCQUFpQjt3QkFDbkJQLDZDQUE2QztvQkFDL0M7Z0JBQ0Y7Z0JBRUEsSUFBSUMsa0JBQWtCO29CQUNwQixJQUFJLENBQUNNLGlCQUFpQjt3QkFDcEJQLDZDQUE2QztvQkFDL0M7Z0JBQ0Y7WUFDRjtRQUNGLE9BQU8sSUFBSUksYUFBYSxNQUFNO1lBQzVCLElBQU1LLFFBQVEsRUFBRSxFQUNWQyxlQUFlQyxJQUFBQSxhQUFVLEVBQUNQLFVBQVVLLE9BQU90QixjQUFjO2dCQUN2RCxJQUFNeUIsZ0JBQWdCO2dCQUV0QixPQUFPQTtZQUNUO1lBRU4sSUFBSUYsY0FBYztnQkFDaEIsSUFBTUcsWUFBWUMsSUFBQUEsWUFBSyxFQUFDTCxRQUNsQk0sT0FBT0YsV0FDUEcsZUFBZTdCLGFBQWE4QixjQUFjLENBQUNGO2dCQUVqRCxJQUFJLENBQUNkLGtCQUFrQjtvQkFDckIsSUFBSWUsY0FBYzt3QkFDaEJoQiw2Q0FBNkM7b0JBQy9DO2dCQUNGO2dCQUVBLElBQUlDLGtCQUFrQjtvQkFDcEIsSUFBSSxDQUFDZSxjQUFjO3dCQUNqQmhCLDZDQUE2QztvQkFDL0M7Z0JBQ0Y7WUFDRjtRQUNGO1FBRUEsSUFBSUEsNENBQTRDO1lBQzlDYixhQUFhWSxLQUFLLENBQUMsQUFBQyxvQkFBMEMsT0FBdkJSLHdCQUF1QixnREFBOENQO1FBQzlHO0lBQ0Y7SUFFQSxPQUFPZ0I7QUFDVDtBQUVBLFNBQVNKLHdDQUF3Q1osb0JBQW9CLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQ3ZHLElBQUkrQiw0Q0FBNEM7SUFFaEQsSUFBSSxDQUFDaEMsU0FBUztRQUNaLElBQU1LLHlCQUF5QkosYUFBYUssWUFBWSxDQUFDUjtRQUV6REcsYUFBYU0sS0FBSyxDQUFDLEFBQUMsa0JBQXdDLE9BQXZCRix3QkFBdUIsaURBQStDUDtRQUUzRyxJQUFNbUMsaUJBQWlCaEMsYUFBYWlDLGdCQUFnQjtRQUVwRCxJQUFJRCxnQkFBZ0I7WUFDbEJoQyxhQUFhWSxLQUFLLENBQUMsQUFBQyxRQUE4QixPQUF2QlIsd0JBQXVCLHFGQUFtRlA7UUFDdkksT0FBTztZQUNMLElBQU1xQyxrQkFBa0JyQyxzQkFDbEJzQywwQkFBMEJDLGtCQUFxQixDQUFDQyxxQkFBcUIsQ0FBQ0gsaUJBQWlCbEMsY0FBYztnQkFDbkcsSUFBTXlCLGdCQUFnQjtnQkFFdEIsT0FBT0E7WUFDVDtZQUVOTSw0Q0FBNENJLHlCQUF5QixHQUFHO1FBQzFFO1FBRUEsSUFBSUosMkNBQTJDO1lBQzdDL0IsYUFBYVksS0FBSyxDQUFDLEFBQUMsb0JBQTBDLE9BQXZCUix3QkFBdUIsK0NBQTZDUDtRQUM3RztJQUNGO0lBRUEsT0FBT2tDO0FBQ1QifQ==
|
package/lib/verify/derivation.js
CHANGED
|
@@ -16,16 +16,16 @@ function _interop_require_default(obj) {
|
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
18
|
var proofStepNodesQuery = (0, _query.nodesQuery)("/derivation/proofStep|lastProofStep");
|
|
19
|
-
function verifyDerivation(
|
|
20
|
-
var
|
|
21
|
-
var proofStepNodes = proofStepNodesQuery(
|
|
22
|
-
|
|
23
|
-
var proofStepVerified = (0, _proofStep.default)(proofStepNode, localContext);
|
|
19
|
+
function verifyDerivation(derivationNode, substitutions, localContext) {
|
|
20
|
+
var derivationVerified;
|
|
21
|
+
var proofStepNodes = proofStepNodesQuery(derivationNode);
|
|
22
|
+
derivationVerified = proofStepNodes.every(function(proofStepNode) {
|
|
23
|
+
var proofStepVerified = (0, _proofStep.default)(proofStepNode, substitutions, localContext);
|
|
24
24
|
if (proofStepVerified) {
|
|
25
25
|
return true;
|
|
26
26
|
}
|
|
27
27
|
});
|
|
28
|
-
return
|
|
28
|
+
return derivationVerified;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZGVyaXZhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVByb29mU3RlcCBmcm9tIFwiLi4vdmVyaWZ5L3Byb29mU3RlcFwiO1xuXG5pbXBvcnQgeyBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBwcm9vZlN0ZXBOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9kZXJpdmF0aW9uL3Byb29mU3RlcHxsYXN0UHJvb2ZTdGVwXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlEZXJpdmF0aW9uKGRlcml2YXRpb25Ob2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2YXRpb25WZXJpZmllZDtcblxuICBjb25zdCBwcm9vZlN0ZXBOb2RlcyA9IHByb29mU3RlcE5vZGVzUXVlcnkoZGVyaXZhdGlvbk5vZGUpO1xuXG4gIGRlcml2YXRpb25WZXJpZmllZCA9IHByb29mU3RlcE5vZGVzLmV2ZXJ5KChwcm9vZlN0ZXBOb2RlKSA9PiB7XG4gICAgY29uc3QgcHJvb2ZTdGVwVmVyaWZpZWQgPSB2ZXJpZnlQcm9vZlN0ZXAocHJvb2ZTdGVwTm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChwcm9vZlN0ZXBWZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gZGVyaXZhdGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeURlcml2YXRpb24iLCJwcm9vZlN0ZXBOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsImRlcml2YXRpb25Ob2RlIiwic3Vic3RpdHV0aW9ucyIsImxvY2FsQ29udGV4dCIsImRlcml2YXRpb25WZXJpZmllZCIsInByb29mU3RlcE5vZGVzIiwiZXZlcnkiLCJwcm9vZlN0ZXBOb2RlIiwicHJvb2ZTdGVwVmVyaWZpZWQiLCJ2ZXJpZnlQcm9vZlN0ZXAiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBd0JBOzs7Z0VBTkk7cUJBRUQ7Ozs7OztBQUUzQixJQUFNQyxzQkFBc0JDLElBQUFBLGlCQUFVLEVBQUM7QUFFeEIsU0FBU0YsaUJBQWlCRyxjQUFjLEVBQUVDLGFBQWEsRUFBRUMsWUFBWTtJQUNsRixJQUFJQztJQUVKLElBQU1DLGlCQUFpQk4sb0JBQW9CRTtJQUUzQ0cscUJBQXFCQyxlQUFlQyxLQUFLLENBQUMsU0FBQ0M7UUFDekMsSUFBTUMsb0JBQW9CQyxJQUFBQSxrQkFBZSxFQUFDRixlQUFlTCxlQUFlQztRQUV4RSxJQUFJSyxtQkFBbUI7WUFDckIsT0FBTztRQUNUO0lBQ0Y7SUFFQSxPQUFPSjtBQUNUIn0=
|
package/lib/verify/frame.js
CHANGED
|
@@ -47,7 +47,7 @@ function verifyMetavariable(metavariableNode, declarations, localContext) {
|
|
|
47
47
|
var metavariableVerified = false;
|
|
48
48
|
var metavariableString = localContext.nodeAsString(metavariableNode);
|
|
49
49
|
localContext.trace("Verifying the '".concat(metavariableString, "' metavariable..."), metavariableNode);
|
|
50
|
-
var metavariable = localContext.findMetavariableByMetavariableNode(metavariableNode
|
|
50
|
+
var metavariable = localContext.findMetavariableByMetavariableNode(metavariableNode);
|
|
51
51
|
if (metavariable !== null) {
|
|
52
52
|
var metaType = metavariable.getMetaType();
|
|
53
53
|
if (metaType === _frame1.default) {
|
|
@@ -72,4 +72,4 @@ function verifyMetavariable(metavariableNode, declarations, localContext) {
|
|
|
72
72
|
return metavariableVerified;
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZnJhbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBGcmFtZSBmcm9tIFwiLi4vZnJhbWVcIjtcbmltcG9ydCBmcmFtZU1ldGFUeXBlIGZyb20gXCIuLi9tZXRhVHlwZS9mcmFtZVwiO1xuaW1wb3J0IHZlcmlmeURlY2xhcmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvZGVjbGFyYXRpb25cIjtcblxuaW1wb3J0IHsgcHVzaCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGRlY2xhcmF0aW9uTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvZnJhbWUvZGVjbGFyYXRpb25cIiksXG4gICAgICBtZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9mcmFtZS9tZXRhdmFyaWFibGVcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeUZyYW1lKGZyYW1lTm9kZSwgZnJhbWVzLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBmcmFtZVZlcmlmaWVkO1xuXG4gIGNvbnN0IGZyYW1lU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhmcmFtZU5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtmcmFtZVN0cmluZ30nIGZyYW1lLi4uYCwgZnJhbWVOb2RlKTtcblxuICBjb25zdCBkZWNsYXJhdGlvbnMgPSBbXSxcbiAgICAgICAgZGVjbGFyYXRpb25Ob2RlcyA9IGRlY2xhcmF0aW9uTm9kZXNRdWVyeShmcmFtZU5vZGUpLFxuICAgICAgICBkZWNsYXJhdGlvbnNWZXJpZmllZCA9IGRlY2xhcmF0aW9uTm9kZXMuZXZlcnkoKGRlY2xhcmF0aW9uTm9kZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWNsYXJhdGlvbihkZWNsYXJhdGlvbk5vZGUsIGRlY2xhcmF0aW9ucywgbG9jYWxDb250ZXh0KTtcblxuICAgICAgICAgIHJldHVybiBkZWNsYXJhdGlvblZlcmlmaWVkO1xuICAgICAgICB9KTtcblxuICBpZiAoZGVjbGFyYXRpb25zVmVyaWZpZWQpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlcyA9IG1ldGF2YXJpYWJsZU5vZGVzUXVlcnkoZnJhbWVOb2RlKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVzVmVyaWZpZWQgPSBtZXRhdmFyaWFibGVOb2Rlcy5ldmVyeSgobWV0YXZhcmlhYmxlTm9kZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgZGVjbGFyYXRpb25zLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgICAgICByZXR1cm4gbWV0YXZhcmlhYmxlVmVyaWZpZWQ7XG4gICAgICAgICAgfSk7XG5cbiAgICBpZiAobWV0YXZhcmlhYmxlc1ZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBmcmFtZSA9IEZyYW1lLmZyb21EZWNsYXJhdGlvbnMoZGVjbGFyYXRpb25zKTtcblxuICAgICAgZnJhbWVzLnB1c2goZnJhbWUpO1xuXG4gICAgICBmcmFtZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBpZiAoZnJhbWVWZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2ZyYW1lU3RyaW5nfScgZnJhbWUuYCwgZnJhbWVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBmcmFtZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgZGVjbGFyYXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhdmFyaWFibGVOb2RlKTtcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlLi4uYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlID0gbG9jYWxDb250ZXh0LmZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgaWYgKG1ldGF2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGFUeXBlID0gbWV0YXZhcmlhYmxlLmdldE1ldGFUeXBlKCk7XG5cbiAgICBpZiAobWV0YVR5cGUgPT09IGZyYW1lTWV0YVR5cGUpIHtcbiAgICAgIGNvbnN0IGp1ZGdlbWVudCA9IGxvY2FsQ29udGV4dC5maW5kSnVkZ2VtZW50QnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgICBpZiAoanVkZ2VtZW50ICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGp1ZGdlbWVudERlY2xhcmF0aW9ucyA9IGp1ZGdlbWVudC5nZXREZWNsYXJhdGlvbnMoKTtcblxuICAgICAgICBwdXNoKGRlY2xhcmF0aW9ucywganVkZ2VtZW50RGVjbGFyYXRpb25zKTtcblxuICAgICAgICBtZXRhdmFyaWFibGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZXJlIGlzIG5vIGp1ZGdlbWVudCBmb3IgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZnJhbWVNZXRhVHlwZU5hbWUgPSBmcmFtZU1ldGFUeXBlLmdldE5hbWUoKSxcbiAgICAgICAgICAgIG1ldGFUeXBlU3RyaW5nID0gbWV0YVR5cGUuYXNTdHJpbmcoKTtcblxuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlJ3MgbWV0YS10eXBlIGlzICcke21ldGFUeXBlU3RyaW5nfScgd2hlbiBpdCBzaG91bGQgYmUgJyR7ZnJhbWVNZXRhVHlwZU5hbWV9Jy5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlIGlzIG5vdCBwcmVzZW50Jy5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIGlmIChtZXRhdmFyaWFibGVWZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhdmFyaWFibGVWZXJpZmllZDtcbn0iXSwibmFtZXMiOlsidmVyaWZ5RnJhbWUiLCJkZWNsYXJhdGlvbk5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZXNRdWVyeSIsImZyYW1lTm9kZSIsImZyYW1lcyIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsImZyYW1lVmVyaWZpZWQiLCJmcmFtZVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwiZGVjbGFyYXRpb25zIiwiZGVjbGFyYXRpb25Ob2RlcyIsImRlY2xhcmF0aW9uc1ZlcmlmaWVkIiwiZXZlcnkiLCJkZWNsYXJhdGlvbk5vZGUiLCJkZWNsYXJhdGlvblZlcmlmaWVkIiwidmVyaWZ5RGVjbGFyYXRpb24iLCJtZXRhdmFyaWFibGVOb2RlcyIsIm1ldGF2YXJpYWJsZXNWZXJpZmllZCIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVWZXJpZmllZCIsInZlcmlmeU1ldGF2YXJpYWJsZSIsImZyYW1lIiwiRnJhbWUiLCJmcm9tRGVjbGFyYXRpb25zIiwicHVzaCIsImRlYnVnIiwibWV0YXZhcmlhYmxlU3RyaW5nIiwibWV0YXZhcmlhYmxlIiwiZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFUeXBlIiwiZ2V0TWV0YVR5cGUiLCJmcmFtZU1ldGFUeXBlIiwianVkZ2VtZW50IiwiZmluZEp1ZGdlbWVudEJ5TWV0YXZhcmlhYmxlTm9kZSIsImp1ZGdlbWVudERlY2xhcmF0aW9ucyIsImdldERlY2xhcmF0aW9ucyIsImZyYW1lTWV0YVR5cGVOYW1lIiwiZ2V0TmFtZSIsIm1ldGFUeXBlU3RyaW5nIiwiYXNTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBd0JBOzs7NERBVk47NkRBQ1E7a0VBQ0k7cUJBRVQ7cUJBQ007Ozs7OztBQUUzQixJQUFNQyx3QkFBd0JDLElBQUFBLGlCQUFVLEVBQUMsdUJBQ25DQyx5QkFBeUJELElBQUFBLGlCQUFVLEVBQUM7QUFFM0IsU0FBU0YsWUFBWUksU0FBUyxFQUFFQyxNQUFNLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQ3ZGLElBQUlDO0lBRUosSUFBTUMsY0FBY0YsYUFBYUcsWUFBWSxDQUFDUDtJQUU5Q0ksYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQTZCLE9BQVpGLGFBQVksZUFBYU47SUFFOUQsSUFBTVMsZUFBZSxFQUFFLEVBQ2pCQyxtQkFBbUJiLHNCQUFzQkcsWUFDekNXLHVCQUF1QkQsaUJBQWlCRSxLQUFLLENBQUMsU0FBQ0M7UUFDN0MsSUFBTUMsc0JBQXNCQyxJQUFBQSxvQkFBaUIsRUFBQ0YsaUJBQWlCSixjQUFjTDtRQUU3RSxPQUFPVTtJQUNUO0lBRU4sSUFBSUgsc0JBQXNCO1FBQ3hCLElBQU1LLG9CQUFvQmpCLHVCQUF1QkMsWUFDM0NpQix3QkFBd0JELGtCQUFrQkosS0FBSyxDQUFDLFNBQUNNO1lBQy9DLElBQU1DLHVCQUF1QkMsbUJBQW1CRixrQkFBa0JULGNBQWNMO1lBRWhGLE9BQU9lO1FBQ1Q7UUFFTixJQUFJRix1QkFBdUI7WUFDekIsSUFBTUksUUFBUUMsY0FBSyxDQUFDQyxnQkFBZ0IsQ0FBQ2Q7WUFFckNSLE9BQU91QixJQUFJLENBQUNIO1lBRVpoQixnQkFBZ0I7UUFDbEI7SUFDRjtJQUVBLElBQUlBLGVBQWU7UUFDakJELGFBQWFxQixLQUFLLENBQUMsQUFBQyxvQkFBK0IsT0FBWm5CLGFBQVksYUFBV047SUFDaEU7SUFFQSxPQUFPSztBQUNUO0FBRUEsU0FBU2UsbUJBQW1CRixnQkFBZ0IsRUFBRVQsWUFBWSxFQUFFTCxZQUFZO0lBQ3RFLElBQUllLHVCQUF1QjtJQUUzQixJQUFNTyxxQkFBcUJ0QixhQUFhRyxZQUFZLENBQUNXO0lBRXJEZCxhQUFhSSxLQUFLLENBQUMsQUFBQyxrQkFBb0MsT0FBbkJrQixvQkFBbUIsc0JBQW9CUjtJQUU1RSxJQUFNUyxlQUFldkIsYUFBYXdCLGtDQUFrQyxDQUFDVjtJQUVyRSxJQUFJUyxpQkFBaUIsTUFBTTtRQUN6QixJQUFNRSxXQUFXRixhQUFhRyxXQUFXO1FBRXpDLElBQUlELGFBQWFFLGVBQWEsRUFBRTtZQUM5QixJQUFNQyxZQUFZNUIsYUFBYTZCLCtCQUErQixDQUFDZjtZQUUvRCxJQUFJYyxjQUFjLE1BQU07Z0JBQ3RCLElBQU1FLHdCQUF3QkYsVUFBVUcsZUFBZTtnQkFFdkRYLElBQUFBLFdBQUksRUFBQ2YsY0FBY3lCO2dCQUVuQmYsdUJBQXVCO1lBQ3pCLE9BQU87Z0JBQ0xmLGFBQWFxQixLQUFLLENBQUMsQUFBQyxrQ0FBb0QsT0FBbkJDLG9CQUFtQixvQkFBa0JSO1lBQzVGO1FBQ0YsT0FBTztZQUNMLElBQU1rQixvQkFBb0JMLGVBQWEsQ0FBQ00sT0FBTyxJQUN6Q0MsaUJBQWlCVCxTQUFTVSxRQUFRO1lBRXhDbkMsYUFBYXFCLEtBQUssQ0FBQyxBQUFDLFFBQTJEYSxPQUFwRFosb0JBQW1CLG1DQUF1RVUsT0FBdENFLGdCQUFlLHlCQUF5QyxPQUFsQkYsbUJBQWtCLE9BQUtsQjtRQUM5STtJQUNGLE9BQU87UUFDTGQsYUFBYXFCLEtBQUssQ0FBQyxBQUFDLFFBQTBCLE9BQW5CQyxvQkFBbUIsb0NBQWtDUjtJQUNsRjtJQUVBLElBQUlDLHNCQUFzQjtRQUN4QmYsYUFBYXFCLEtBQUssQ0FBQyxBQUFDLG9CQUFzQyxPQUFuQkMsb0JBQW1CLG9CQUFrQlI7SUFDOUU7SUFFQSxPQUFPQztBQUNUIn0=
|