occam-verify-cli 0.0.983 → 0.0.984
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/constants.js +5 -1
- package/lib/constructor/bracketed.js +2 -2
- package/lib/node/frame/bracketed.js +16 -0
- package/lib/node/statement/combinator/bracketed.js +3 -3
- package/lib/node/term/constructor/bracketed.js +3 -3
- package/lib/ocmbinator/bracketed.js +2 -2
- package/lib/ruleNames.js +11 -7
- package/lib/substitution/frameForMetavariable.js +7 -6
- package/lib/substitution/statementForMetavariable.js +6 -21
- package/lib/tokens/combinatorFrame/bracketed.js +17 -0
- package/lib/tokens/combinatorStatement/bracketed.js +17 -0
- package/lib/tokens/constructorTerm/bracketed.js +17 -0
- package/lib/utilities/brackets.js +22 -3
- package/lib/utilities/node.js +26 -22
- package/lib/utilities/tokens.js +18 -11
- package/lib/verify/assertion/contained.js +37 -34
- package/lib/verify/assertion/defined.js +27 -35
- package/package.json +2 -2
- package/src/constants.js +1 -0
- package/src/constructor/bracketed.js +1 -1
- package/src/node/frame/bracketed.js +9 -0
- package/src/node/statement/combinator/bracketed.js +3 -3
- package/src/node/term/constructor/bracketed.js +3 -3
- package/src/ocmbinator/bracketed.js +2 -2
- package/src/ruleNames.js +3 -2
- package/src/substitution/frameForMetavariable.js +10 -6
- package/src/substitution/statementForMetavariable.js +5 -21
- package/src/tokens/combinatorFrame/bracketed.js +10 -0
- package/src/tokens/combinatorStatement/bracketed.js +10 -0
- package/src/tokens/constructorTerm/bracketed.js +10 -0
- package/src/utilities/brackets.js +25 -1
- package/src/utilities/node.js +27 -28
- package/src/utilities/tokens.js +15 -10
- package/src/verify/assertion/contained.js +48 -45
- package/src/verify/assertion/defined.js +31 -45
- package/lib/tokens/constructorDeclaration/bracketed.js +0 -17
- package/lib/tokens/unqualifiedStatement/combinator/bracketed.js +0 -17
- package/src/tokens/constructorDeclaration/bracketed.js +0 -10
- package/src/tokens/unqualifiedStatement/combinator/bracketed.js +0 -10
package/lib/utilities/node.js
CHANGED
|
@@ -9,50 +9,54 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
+
frameNodeFromFrameString: function() {
|
|
13
|
+
return frameNodeFromFrameString;
|
|
14
|
+
},
|
|
15
|
+
frameNodeFromFrameTokens: function() {
|
|
16
|
+
return frameNodeFromFrameTokens;
|
|
17
|
+
},
|
|
12
18
|
statementNodeFromStatementString: function() {
|
|
13
19
|
return statementNodeFromStatementString;
|
|
14
20
|
},
|
|
15
|
-
|
|
16
|
-
return
|
|
17
|
-
},
|
|
18
|
-
termNodeFromConstructorDeclarationTokens: function() {
|
|
19
|
-
return termNodeFromConstructorDeclarationTokens;
|
|
21
|
+
statementNodeFromStatementTokens: function() {
|
|
22
|
+
return statementNodeFromStatementTokens;
|
|
20
23
|
},
|
|
21
24
|
termNodeFromTermString: function() {
|
|
22
25
|
return termNodeFromTermString;
|
|
26
|
+
},
|
|
27
|
+
termNodeFromTermTokens: function() {
|
|
28
|
+
return termNodeFromTermTokens;
|
|
23
29
|
}
|
|
24
30
|
});
|
|
25
31
|
var _occamcustomgrammars = require("occam-custom-grammars");
|
|
26
|
-
var _query = require("../utilities/query");
|
|
27
32
|
var _customGrammar = require("./customGrammar");
|
|
28
33
|
var _ruleNames = require("../ruleNames");
|
|
29
34
|
var _tokens = require("../utilities/tokens");
|
|
30
35
|
var florenceParserFromCombinedCustomGrammar = _occamcustomgrammars.parsersUtilities.florenceParserFromCombinedCustomGrammar;
|
|
31
36
|
var combinedCustomGrammar = (0, _customGrammar.combinedCustomGrammarFromNothing)(), florenceParser = florenceParserFromCombinedCustomGrammar(combinedCustomGrammar);
|
|
32
|
-
var termNodeQuery = (0, _query.nodeQuery)("/constructorDeclaration/term!"), statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!");
|
|
33
37
|
function termNodeFromTermString(termString, lexer, parser) {
|
|
34
|
-
var
|
|
38
|
+
var termTokens = (0, _tokens.termTokensFromTermString)(termString, lexer), termNode = termNodeFromTermTokens(termTokens, parser);
|
|
35
39
|
return termNode;
|
|
36
40
|
}
|
|
41
|
+
function frameNodeFromFrameString(frameString, lexer, parser) {
|
|
42
|
+
var frameTokens = (0, _tokens.frameTokensFromFrameString)(frameString, lexer), frameNode = frameNodeFromFrameTokens(frameTokens, parser);
|
|
43
|
+
return frameNode;
|
|
44
|
+
}
|
|
37
45
|
function statementNodeFromStatementString(statementString, lexer, parser) {
|
|
38
|
-
var
|
|
46
|
+
var statementTokens = (0, _tokens.statementTokensFromStatementString)(statementString, lexer), statementNode = statementNodeFromStatementTokens(statementTokens, parser);
|
|
39
47
|
return statementNode;
|
|
40
48
|
}
|
|
41
|
-
function
|
|
42
|
-
var
|
|
49
|
+
function termNodeFromTermTokens(termTokens, parser) {
|
|
50
|
+
var tokens = termTokens, ruleName = _ruleNames.TERM_RULE_NAME, termNode = nodeFromTokensRuleNameAndParser(tokens, ruleName, parser);
|
|
43
51
|
return termNode;
|
|
44
52
|
}
|
|
45
|
-
function
|
|
46
|
-
var
|
|
47
|
-
return
|
|
48
|
-
}
|
|
49
|
-
function unqualifiedStatementNodeFromUnqualifiedStatementTokens(unqualifiedStatementTokens, parser) {
|
|
50
|
-
var ruleName = _ruleNames.UNQUALIFIED_STATEMENT_RULE_NAME, unqualifiedStatementNode = nodeFromTokensRuleNameAndParser(unqualifiedStatementTokens, ruleName, parser);
|
|
51
|
-
return unqualifiedStatementNode;
|
|
53
|
+
function frameNodeFromFrameTokens(frameTokens, parser) {
|
|
54
|
+
var tokens = frameTokens, ruleName = _ruleNames.FRAME_RULE_NAME, frameNode = nodeFromTokensRuleNameAndParser(tokens, ruleName, parser);
|
|
55
|
+
return frameNode;
|
|
52
56
|
}
|
|
53
|
-
function
|
|
54
|
-
var ruleName = _ruleNames.
|
|
55
|
-
return
|
|
57
|
+
function statementNodeFromStatementTokens(statementTokens, parser) {
|
|
58
|
+
var tokens = statementTokens, ruleName = _ruleNames.STATEMENT_RULE_NAME, statementNode = nodeFromTokensRuleNameAndParser(tokens, ruleName, parser);
|
|
59
|
+
return statementNode;
|
|
56
60
|
}
|
|
57
61
|
function nodeFromTokensRuleNameAndParser(tokens, ruleName) {
|
|
58
62
|
var parser = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : florenceParser;
|
|
@@ -60,4 +64,4 @@ function nodeFromTokensRuleNameAndParser(tokens, ruleName) {
|
|
|
60
64
|
return node;
|
|
61
65
|
}
|
|
62
66
|
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcGFyc2Vyc1V0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1jdXN0b20tZ3JhbW1hcnNcIjtcblxuaW1wb3J0IHsgY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmcgfSBmcm9tIFwiLi9jdXN0b21HcmFtbWFyXCI7XG5pbXBvcnQgeyBURVJNX1JVTEVfTkFNRSwgRlJBTUVfUlVMRV9OQU1FLCBTVEFURU1FTlRfUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuaW1wb3J0IHsgdGVybVRva2Vuc0Zyb21UZXJtU3RyaW5nLCBmcmFtZVRva2Vuc0Zyb21GcmFtZVN0cmluZywgc3RhdGVtZW50VG9rZW5zRnJvbVN0YXRlbWVudFN0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvdG9rZW5zXCI7XG5cbmNvbnN0IHsgZmxvcmVuY2VQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIH0gPSBwYXJzZXJzVXRpbGl0aWVzO1xuXG5jb25zdCBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tTm90aGluZygpLFxuICAgICAgZmxvcmVuY2VQYXJzZXIgPSBmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm1Ob2RlRnJvbVRlcm1TdHJpbmcodGVybVN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCB0ZXJtVG9rZW5zID0gdGVybVRva2Vuc0Zyb21UZXJtU3RyaW5nKHRlcm1TdHJpbmcsIGxleGVyKSxcbiAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZUZyb21UZXJtVG9rZW5zKHRlcm1Ub2tlbnMsIHBhcnNlcik7XG5cbiAgcmV0dXJuIHRlcm1Ob2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJhbWVOb2RlRnJvbUZyYW1lU3RyaW5nKGZyYW1lU3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IGZyYW1lVG9rZW5zID0gZnJhbWVUb2tlbnNGcm9tRnJhbWVTdHJpbmcoZnJhbWVTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgZnJhbWVOb2RlID0gZnJhbWVOb2RlRnJvbUZyYW1lVG9rZW5zKGZyYW1lVG9rZW5zLCBwYXJzZXIpO1xuXG4gIHJldHVybiBmcmFtZU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudFN0cmluZyhzdGF0ZW1lbnRTdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3Qgc3RhdGVtZW50VG9rZW5zID0gc3RhdGVtZW50VG9rZW5zRnJvbVN0YXRlbWVudFN0cmluZyhzdGF0ZW1lbnRTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVGcm9tU3RhdGVtZW50VG9rZW5zKHN0YXRlbWVudFRva2VucywgcGFyc2VyKTtcblxuICByZXR1cm4gc3RhdGVtZW50Tm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm1Ob2RlRnJvbVRlcm1Ub2tlbnModGVybVRva2VucywgcGFyc2VyKSB7XG4gIGNvbnN0IHRva2VucyA9IHRlcm1Ub2tlbnMsICAvLy9cbiAgICAgICAgcnVsZU5hbWUgPSBURVJNX1JVTEVfTkFNRSxcbiAgICAgICAgdGVybU5vZGUgPSBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKHRva2VucywgcnVsZU5hbWUsIHBhcnNlcik7XG5cbiAgcmV0dXJuIHRlcm1Ob2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJhbWVOb2RlRnJvbUZyYW1lVG9rZW5zKGZyYW1lVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgdG9rZW5zID0gZnJhbWVUb2tlbnMsICAvLy9cbiAgICAgICAgcnVsZU5hbWUgPSBGUkFNRV9SVUxFX05BTUUsXG4gICAgICAgIGZyYW1lTm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyKTtcblxuICByZXR1cm4gZnJhbWVOb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRUb2tlbnMoc3RhdGVtZW50VG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgdG9rZW5zID0gc3RhdGVtZW50VG9rZW5zLCAgLy8vXG4gICAgICAgIHJ1bGVOYW1lID0gU1RBVEVNRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgc3RhdGVtZW50Tm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyKTtcblxuICByZXR1cm4gc3RhdGVtZW50Tm9kZTtcbn1cblxuZnVuY3Rpb24gbm9kZUZyb21Ub2tlbnNSdWxlTmFtZUFuZFBhcnNlcih0b2tlbnMsIHJ1bGVOYW1lLCBwYXJzZXIgPSBmbG9yZW5jZVBhcnNlcikge1xuICBjb25zdCBydWxlTWFwID0gcGFyc2VyLmdldFJ1bGVNYXAoKSxcbiAgICAgICAgcnVsZSA9IHJ1bGVNYXBbcnVsZU5hbWVdLFxuICAgICAgICBub2RlID0gcGFyc2VyLnBhcnNlKHRva2VucywgcnVsZSk7XG5cbiAgcmV0dXJuIG5vZGU7XG59XG4iXSwibmFtZXMiOlsiZnJhbWVOb2RlRnJvbUZyYW1lU3RyaW5nIiwiZnJhbWVOb2RlRnJvbUZyYW1lVG9rZW5zIiwic3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRTdHJpbmciLCJzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudFRva2VucyIsInRlcm1Ob2RlRnJvbVRlcm1TdHJpbmciLCJ0ZXJtTm9kZUZyb21UZXJtVG9rZW5zIiwiZmxvcmVuY2VQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwicGFyc2Vyc1V0aWxpdGllcyIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nIiwiZmxvcmVuY2VQYXJzZXIiLCJ0ZXJtU3RyaW5nIiwibGV4ZXIiLCJwYXJzZXIiLCJ0ZXJtVG9rZW5zIiwidGVybVRva2Vuc0Zyb21UZXJtU3RyaW5nIiwidGVybU5vZGUiLCJmcmFtZVN0cmluZyIsImZyYW1lVG9rZW5zIiwiZnJhbWVUb2tlbnNGcm9tRnJhbWVTdHJpbmciLCJmcmFtZU5vZGUiLCJzdGF0ZW1lbnRTdHJpbmciLCJzdGF0ZW1lbnRUb2tlbnMiLCJzdGF0ZW1lbnRUb2tlbnNGcm9tU3RhdGVtZW50U3RyaW5nIiwic3RhdGVtZW50Tm9kZSIsInRva2VucyIsInJ1bGVOYW1lIiwiVEVSTV9SVUxFX05BTUUiLCJub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyIiwiRlJBTUVfUlVMRV9OQU1FIiwiU1RBVEVNRU5UX1JVTEVfTkFNRSIsInJ1bGVNYXAiLCJnZXRSdWxlTWFwIiwicnVsZSIsIm5vZGUiLCJwYXJzZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBb0JnQkEsd0JBQXdCO2VBQXhCQTs7SUFzQkFDLHdCQUF3QjtlQUF4QkE7O0lBZkFDLGdDQUFnQztlQUFoQ0E7O0lBdUJBQyxnQ0FBZ0M7ZUFBaENBOztJQXJDQUMsc0JBQXNCO2VBQXRCQTs7SUFxQkFDLHNCQUFzQjtlQUF0QkE7OzttQ0FoQ2lCOzZCQUVnQjt5QkFDb0I7c0JBQ29DO0FBRXpHLElBQU0sQUFBRUMsMENBQTRDQyxxQ0FBZ0IsQ0FBNUREO0FBRVIsSUFBTUUsd0JBQXdCQyxJQUFBQSwrQ0FBZ0MsS0FDeERDLGlCQUFpQkosd0NBQXdDRTtBQUV4RCxTQUFTSix1QkFBdUJPLFVBQVUsRUFBRUMsS0FBSyxFQUFFQyxNQUFNO0lBQzlELElBQU1DLGFBQWFDLElBQUFBLGdDQUF3QixFQUFDSixZQUFZQyxRQUNsREksV0FBV1gsdUJBQXVCUyxZQUFZRDtJQUVwRCxPQUFPRztBQUNUO0FBRU8sU0FBU2hCLHlCQUF5QmlCLFdBQVcsRUFBRUwsS0FBSyxFQUFFQyxNQUFNO0lBQ2pFLElBQU1LLGNBQWNDLElBQUFBLGtDQUEwQixFQUFDRixhQUFhTCxRQUN0RFEsWUFBWW5CLHlCQUF5QmlCLGFBQWFMO0lBRXhELE9BQU9PO0FBQ1Q7QUFFTyxTQUFTbEIsaUNBQWlDbUIsZUFBZSxFQUFFVCxLQUFLLEVBQUVDLE1BQU07SUFDN0UsSUFBTVMsa0JBQWtCQyxJQUFBQSwwQ0FBa0MsRUFBQ0YsaUJBQWlCVCxRQUN0RVksZ0JBQWdCckIsaUNBQWlDbUIsaUJBQWlCVDtJQUV4RSxPQUFPVztBQUNUO0FBRU8sU0FBU25CLHVCQUF1QlMsVUFBVSxFQUFFRCxNQUFNO0lBQ3ZELElBQU1ZLFNBQVNYLFlBQ1RZLFdBQVdDLHlCQUFjLEVBQ3pCWCxXQUFXWSxnQ0FBZ0NILFFBQVFDLFVBQVViO0lBRW5FLE9BQU9HO0FBQ1Q7QUFFTyxTQUFTZix5QkFBeUJpQixXQUFXLEVBQUVMLE1BQU07SUFDMUQsSUFBTVksU0FBU1AsYUFDVFEsV0FBV0csMEJBQWUsRUFDMUJULFlBQVlRLGdDQUFnQ0gsUUFBUUMsVUFBVWI7SUFFcEUsT0FBT087QUFDVDtBQUVPLFNBQVNqQixpQ0FBaUNtQixlQUFlLEVBQUVULE1BQU07SUFDdEUsSUFBTVksU0FBU0gsaUJBQ1RJLFdBQVdJLDhCQUFtQixFQUM5Qk4sZ0JBQWdCSSxnQ0FBZ0NILFFBQVFDLFVBQVViO0lBRXhFLE9BQU9XO0FBQ1Q7QUFFQSxTQUFTSSxnQ0FBZ0NILE1BQU0sRUFBRUMsUUFBUTtRQUFFYixTQUFBQSxpRUFBU0g7SUFDbEUsSUFBTXFCLFVBQVVsQixPQUFPbUIsVUFBVSxJQUMzQkMsT0FBT0YsT0FBTyxDQUFDTCxTQUFTLEVBQ3hCUSxPQUFPckIsT0FBT3NCLEtBQUssQ0FBQ1YsUUFBUVE7SUFFbEMsT0FBT0M7QUFDVCJ9
|
package/lib/utilities/tokens.js
CHANGED
|
@@ -9,24 +9,31 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
|
|
13
|
-
return
|
|
12
|
+
frameTokensFromFrameString: function() {
|
|
13
|
+
return frameTokensFromFrameString;
|
|
14
14
|
},
|
|
15
|
-
|
|
16
|
-
return
|
|
15
|
+
statementTokensFromStatementString: function() {
|
|
16
|
+
return statementTokensFromStatementString;
|
|
17
|
+
},
|
|
18
|
+
termTokensFromTermString: function() {
|
|
19
|
+
return termTokensFromTermString;
|
|
17
20
|
}
|
|
18
21
|
});
|
|
19
22
|
var _occamcustomgrammars = require("occam-custom-grammars");
|
|
20
23
|
var _customGrammar = require("./customGrammar");
|
|
21
24
|
var florenceLexerFromCombinedCustomGrammar = _occamcustomgrammars.lexersUtilities.florenceLexerFromCombinedCustomGrammar;
|
|
22
25
|
var combinedCustomGrammar = (0, _customGrammar.combinedCustomGrammarFromNothing)(), florenceLexer = florenceLexerFromCombinedCustomGrammar(combinedCustomGrammar);
|
|
23
|
-
function
|
|
24
|
-
var
|
|
25
|
-
return
|
|
26
|
+
function termTokensFromTermString(termString, lexer) {
|
|
27
|
+
var content = termString, termTokens = tokensFromContentAndLexer(content, lexer);
|
|
28
|
+
return termTokens;
|
|
29
|
+
}
|
|
30
|
+
function frameTokensFromFrameString(frameString, lexer) {
|
|
31
|
+
var content = frameString, frameTokens = tokensFromContentAndLexer(content, lexer);
|
|
32
|
+
return frameTokens;
|
|
26
33
|
}
|
|
27
|
-
function
|
|
28
|
-
var
|
|
29
|
-
return
|
|
34
|
+
function statementTokensFromStatementString(statementString, lexer) {
|
|
35
|
+
var content = statementString, statementTokens = tokensFromContentAndLexer(content, lexer);
|
|
36
|
+
return statementTokens;
|
|
30
37
|
}
|
|
31
38
|
function tokensFromContentAndLexer(content) {
|
|
32
39
|
var lexer = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : florenceLexer;
|
|
@@ -34,4 +41,4 @@ function tokensFromContentAndLexer(content) {
|
|
|
34
41
|
return tokens;
|
|
35
42
|
}
|
|
36
43
|
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdG9rZW5zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBsZXhlcnNVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tY3VzdG9tLWdyYW1tYXJzXCI7XG5cbmltcG9ydCB7IGNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nIH0gZnJvbSBcIi4vY3VzdG9tR3JhbW1hclwiO1xuXG5jb25zdCB7IGZsb3JlbmNlTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIH0gPSBsZXhlcnNVdGlsaXRpZXM7XG5cbmNvbnN0IGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9IGNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nKCksXG4gICAgICBmbG9yZW5jZUxleGVyID0gZmxvcmVuY2VMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm1Ub2tlbnNGcm9tVGVybVN0cmluZyh0ZXJtU3RyaW5nLCBsZXhlcikge1xuICBjb25zdCBjb250ZW50ID0gdGVybVN0cmluZywgLy8vXG4gICAgICAgIHRlcm1Ub2tlbnMgPSB0b2tlbnNGcm9tQ29udGVudEFuZExleGVyKGNvbnRlbnQsIGxleGVyKTtcblxuICByZXR1cm4gdGVybVRva2Vucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyYW1lVG9rZW5zRnJvbUZyYW1lU3RyaW5nKGZyYW1lU3RyaW5nLCBsZXhlcikge1xuICBjb25zdCBjb250ZW50ID0gZnJhbWVTdHJpbmcsICAvLy9cbiAgICAgICAgZnJhbWVUb2tlbnMgPSB0b2tlbnNGcm9tQ29udGVudEFuZExleGVyKGNvbnRlbnQsIGxleGVyKTtcblxuICByZXR1cm4gZnJhbWVUb2tlbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdGF0ZW1lbnRUb2tlbnNGcm9tU3RhdGVtZW50U3RyaW5nKHN0YXRlbWVudFN0cmluZywgbGV4ZXIpIHtcbiAgY29uc3QgY29udGVudCA9IHN0YXRlbWVudFN0cmluZywgIC8vL1xuICAgICAgICBzdGF0ZW1lbnRUb2tlbnMgPSB0b2tlbnNGcm9tQ29udGVudEFuZExleGVyKGNvbnRlbnQsIGxleGVyKTtcblxuICByZXR1cm4gc3RhdGVtZW50VG9rZW5zO1xufVxuXG5mdW5jdGlvbiB0b2tlbnNGcm9tQ29udGVudEFuZExleGVyKGNvbnRlbnQsIGxleGVyID0gZmxvcmVuY2VMZXhlcikge1xuICBjb25zdCB0b2tlbnMgPSBsZXhlci50b2tlbmlzZShjb250ZW50KTtcblxuICByZXR1cm4gdG9rZW5zO1xufVxuIl0sIm5hbWVzIjpbImZyYW1lVG9rZW5zRnJvbUZyYW1lU3RyaW5nIiwic3RhdGVtZW50VG9rZW5zRnJvbVN0YXRlbWVudFN0cmluZyIsInRlcm1Ub2tlbnNGcm9tVGVybVN0cmluZyIsImZsb3JlbmNlTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwibGV4ZXJzVXRpbGl0aWVzIiwiY29tYmluZWRDdXN0b21HcmFtbWFyIiwiY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmciLCJmbG9yZW5jZUxleGVyIiwidGVybVN0cmluZyIsImxleGVyIiwiY29udGVudCIsInRlcm1Ub2tlbnMiLCJ0b2tlbnNGcm9tQ29udGVudEFuZExleGVyIiwiZnJhbWVTdHJpbmciLCJmcmFtZVRva2VucyIsInN0YXRlbWVudFN0cmluZyIsInN0YXRlbWVudFRva2VucyIsInRva2VucyIsInRva2VuaXNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFrQmdCQSwwQkFBMEI7ZUFBMUJBOztJQU9BQyxrQ0FBa0M7ZUFBbENBOztJQWRBQyx3QkFBd0I7ZUFBeEJBOzs7bUNBVGdCOzZCQUVpQjtBQUVqRCxJQUFNLEFBQUVDLHlDQUEyQ0Msb0NBQWUsQ0FBMUREO0FBRVIsSUFBTUUsd0JBQXdCQyxJQUFBQSwrQ0FBZ0MsS0FDeERDLGdCQUFnQkosdUNBQXVDRTtBQUV0RCxTQUFTSCx5QkFBeUJNLFVBQVUsRUFBRUMsS0FBSztJQUN4RCxJQUFNQyxVQUFVRixZQUNWRyxhQUFhQywwQkFBMEJGLFNBQVNEO0lBRXRELE9BQU9FO0FBQ1Q7QUFFTyxTQUFTWCwyQkFBMkJhLFdBQVcsRUFBRUosS0FBSztJQUMzRCxJQUFNQyxVQUFVRyxhQUNWQyxjQUFjRiwwQkFBMEJGLFNBQVNEO0lBRXZELE9BQU9LO0FBQ1Q7QUFFTyxTQUFTYixtQ0FBbUNjLGVBQWUsRUFBRU4sS0FBSztJQUN2RSxJQUFNQyxVQUFVSyxpQkFDVkMsa0JBQWtCSiwwQkFBMEJGLFNBQVNEO0lBRTNELE9BQU9PO0FBQ1Q7QUFFQSxTQUFTSiwwQkFBMEJGLE9BQU87UUFBRUQsUUFBQUEsaUVBQVFGO0lBQ2xELElBQU1VLFNBQVNSLE1BQU1TLFFBQVEsQ0FBQ1I7SUFFOUIsT0FBT087QUFDVCJ9
|
|
@@ -16,7 +16,7 @@ function _interop_require_default(obj) {
|
|
|
16
16
|
default: obj
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
|
-
var variableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/term/variable!"), metavariableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/frame
|
|
19
|
+
var variableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/term/variable!"), metavariableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/frame/statement!/metavariable!"), statementVariableNodesQuery = (0, _query.nodesQuery)("/containedAssertion/statement//variable"), statementMetavariableNodesQuery = (0, _query.nodesQuery)("/containedAssertion/statement//metavariable");
|
|
20
20
|
var verifyContainedAssertionFunctions = [
|
|
21
21
|
verifyDerivedContainedAssertion,
|
|
22
22
|
verifyStatedContainedAssertion
|
|
@@ -47,41 +47,44 @@ function verifyDerivedContainedAssertion(containedAssertionNode, assignments, st
|
|
|
47
47
|
if (!stated) {
|
|
48
48
|
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
49
49
|
localContext.trace("Verifying the '".concat(containedAssertionString, "' derived contained assertion..."), containedAssertionNode);
|
|
50
|
-
var
|
|
51
|
-
if (
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
50
|
+
var metavariableNode = metavariableNodeQuery(containedAssertionNode);
|
|
51
|
+
if (metavariableNode !== null) {
|
|
52
|
+
var assertionNegated = (0, _assertion.isAssertionNegated)(containedAssertionNode), variableNode = variableNodeQuery(containedAssertionNode), negated = assertionNegated; ///
|
|
53
|
+
if (false) {
|
|
54
|
+
///
|
|
55
|
+
} else if (metavariableNode !== null) {
|
|
56
|
+
var statementMetavariableNodes = statementMetavariableNodesQuery(containedAssertionNode), variableNodeMatchesStatementMetavariableNode = statementMetavariableNodes.some(function(statementMetavariableNode) {
|
|
57
|
+
var variableNodeMatchesStatementMetavariableNode = metavariableNode.match(statementMetavariableNode);
|
|
58
|
+
if (variableNodeMatchesStatementMetavariableNode) {
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
if (!negated) {
|
|
63
|
+
if (variableNodeMatchesStatementMetavariableNode) {
|
|
64
|
+
derivedContainedAssertionVerified = true;
|
|
65
|
+
}
|
|
58
66
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
67
|
+
if (negated) {
|
|
68
|
+
if (!variableNodeMatchesStatementMetavariableNode) {
|
|
69
|
+
derivedContainedAssertionVerified = true;
|
|
70
|
+
}
|
|
63
71
|
}
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
72
|
+
} else if (variableNode !== null) {
|
|
73
|
+
var statementVariableNodes = statementVariableNodesQuery(containedAssertionNode), variableNodeMatchesStatementVariableNode = statementVariableNodes.some(function(statementVariableNode) {
|
|
74
|
+
var variableNodeMatchesStatementVariableNode = variableNode.match(statementVariableNode);
|
|
75
|
+
if (variableNodeMatchesStatementVariableNode) {
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
if (!negated) {
|
|
80
|
+
if (variableNodeMatchesStatementVariableNode) {
|
|
81
|
+
derivedContainedAssertionVerified = true;
|
|
82
|
+
}
|
|
75
83
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
if (negated) {
|
|
83
|
-
if (!variableNodeMatchesStatementVariableNode) {
|
|
84
|
-
derivedContainedAssertionVerified = true;
|
|
84
|
+
if (negated) {
|
|
85
|
+
if (!variableNodeMatchesStatementVariableNode) {
|
|
86
|
+
derivedContainedAssertionVerified = true;
|
|
87
|
+
}
|
|
85
88
|
}
|
|
86
89
|
}
|
|
87
90
|
}
|
|
@@ -104,4 +107,4 @@ function verifyStatedContainedAssertion(containedAssertionNode, assignments, sta
|
|
|
104
107
|
return statedContainedAssertionVerified;
|
|
105
108
|
}
|
|
106
109
|
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2NvbnRhaW5lZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IG1ldGFMZXZlbFZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9tZXRhTGV2ZWxcIjtcblxuaW1wb3J0IHsgaXNBc3NlcnRpb25OZWdhdGVkIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9hc3NlcnRpb25cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29udGFpbmVkQXNzZXJ0aW9uL3Rlcm0vdmFyaWFibGUhXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9mcmFtZVswXS9tZXRhdmFyaWFibGVcIiksXG4gICAgICBzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9zdGF0ZW1lbnRbLTFdLy92YXJpYWJsZVwiKSxcbiAgICAgIHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9zdGF0ZW1lbnRbLTFdLy9tZXRhdmFyaWFibGVcIik7XG5cbmNvbnN0IHZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbixcbiAgdmVyaWZ5U3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uXG5dO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlDb250YWluZWRBc3NlcnRpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgIHNhdmVkU3RhdGVkID0gc3RhdGVkOyAvLy9cblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gIGFzc2lnbm1lbnRzID0gbnVsbDsgLy8vXG5cbiAgc3RhdGVkID0gdHJ1ZTsgIC8vL1xuXG4gIGNvbnN0IHZlcmlmaWVkID0gbWV0YUxldmVsVmVyaWZpZXIudmVyaWZ5KGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgc3RhdGVkID0gc2F2ZWRTdGF0ZWQ7IC8vL1xuXG4gIGlmICh2ZXJpZmllZCkge1xuICAgIGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zLnNvbWUoKHZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9uKSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9uKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIGlmIChjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGlmIChjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGNvbnRhaW5lZCBhc3NlcnRpb24uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gIH1cblxuICByZXR1cm4gY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeURlcml2ZWRDb250YWluZWRBc3NlcnRpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoIXN0YXRlZCkge1xuICAgIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBhc3NlcnRpb25OZWdhdGVkID0gaXNBc3NlcnRpb25OZWdhdGVkKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgbmVnYXRlZCA9IGFzc2VydGlvbk5lZ2F0ZWQ7IC8vL1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKG1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzID0gc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZXNRdWVyeShjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICAgIHZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlID0gc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZXMuc29tZSgoc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2YXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGUubWF0Y2goc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgICAgICAgaWYgKHZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKHZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAobmVnYXRlZCkge1xuICAgICAgICBpZiAoIXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzID0gc3RhdGVtZW50VmFyaWFibGVOb2Rlc1F1ZXJ5KGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgICAgdmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudFZhcmlhYmxlTm9kZSA9IHN0YXRlbWVudFZhcmlhYmxlTm9kZXMuc29tZSgoc3RhdGVtZW50VmFyaWFibGVOb2RlKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRWYXJpYWJsZU5vZGUgPSB2YXJpYWJsZU5vZGUubWF0Y2goc3RhdGVtZW50VmFyaWFibGVOb2RlKTtcblxuICAgICAgICAgICAgICBpZiAodmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudFZhcmlhYmxlTm9kZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgaWYgKCFuZWdhdGVkKSB7XG4gICAgICAgIGlmICh2YXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAobmVnYXRlZCkge1xuICAgICAgICBpZiAoIXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgICBkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YXRlZENvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkO1xuXG4gIGlmIChzdGF0ZWQpIHtcbiAgICBjb25zdCBjb250YWluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG5cbiAgICBpZiAoc3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlDb250YWluZWRBc3NlcnRpb24iLCJ2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsInN0YXRlbWVudFZhcmlhYmxlTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5IiwidmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zIiwidmVyaWZ5RGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlZENvbnRhaW5lZEFzc2VydGlvbiIsImNvbnRhaW5lZEFzc2VydGlvbk5vZGUiLCJhc3NpZ25tZW50cyIsInN0YXRlZCIsImxvY2FsQ29udGV4dCIsImNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwic2F2ZWRTdGF0ZWQiLCJ0cmFjZSIsInZlcmlmaWVkIiwibWV0YUxldmVsVmVyaWZpZXIiLCJ2ZXJpZnkiLCJzb21lIiwidmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb24iLCJkZWJ1ZyIsImRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCIsImFzc2VydGlvbk5lZ2F0ZWQiLCJpc0Fzc2VydGlvbk5lZ2F0ZWQiLCJtZXRhdmFyaWFibGVOb2RlIiwidmFyaWFibGVOb2RlIiwibmVnYXRlZCIsInN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzIiwidmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlIiwibWF0Y2giLCJzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzIiwidmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudFZhcmlhYmxlTm9kZSIsInN0YXRlbWVudFZhcmlhYmxlTm9kZSIsInN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUF3QkE7OztnRUFmTTt5QkFFSztxQkFDRzs7Ozs7O0FBRXRDLElBQU1DLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyx1Q0FDOUJDLHdCQUF3QkQsSUFBQUEsZ0JBQVMsRUFBQyw4Q0FDbENFLDhCQUE4QkMsSUFBQUEsaUJBQVUsRUFBQyxnREFDekNDLGtDQUFrQ0QsSUFBQUEsaUJBQVUsRUFBQztBQUVuRCxJQUFNRSxvQ0FBb0M7SUFDeENDO0lBQ0FDO0NBQ0Q7QUFFYyxTQUFTVCx5QkFBeUJVLHNCQUFzQixFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUN4RyxJQUFJQyw2QkFBNkI7SUFFakMsSUFBTUMsMkJBQTJCRixhQUFhRyxZQUFZLENBQUNOLHlCQUNyRE8sY0FBY0wsUUFBUSxHQUFHO0lBRS9CQyxhQUFhSyxLQUFLLENBQUMsQUFBQyxrQkFBMEMsT0FBekJILDBCQUF5Qiw2QkFBMkJMO0lBRXpGQyxjQUFjLE1BQU0sR0FBRztJQUV2QkMsU0FBUyxNQUFPLEdBQUc7SUFFbkIsSUFBTU8sV0FBV0Msa0JBQWlCLENBQUNDLE1BQU0sQ0FBQ1gsd0JBQXdCQyxhQUFhQyxRQUFRQztJQUV2RkQsU0FBU0ssYUFBYSxHQUFHO0lBRXpCLElBQUlFLFVBQVU7UUFDWkwsNkJBQTZCUCxrQ0FBa0NlLElBQUksQ0FBQyxTQUFDQztZQUNuRSxJQUFNVCw2QkFBNkJTLGlDQUFpQ2Isd0JBQXdCQyxhQUFhQyxRQUFRQztZQUVqSCxJQUFJQyw0QkFBNEI7Z0JBQzlCLE9BQU87WUFDVDtRQUNGO0lBQ0Y7SUFFQSxJQUFJQSw0QkFBNEI7UUFDOUJELGFBQWFXLEtBQUssQ0FBQyxBQUFDLG9CQUE0QyxPQUF6QlQsMEJBQXlCLDJCQUF5Qkw7SUFDM0Y7SUFFQSxPQUFPSTtBQUNUO0FBRUEsU0FBU04sZ0NBQWdDRSxzQkFBc0IsRUFBRUMsV0FBVyxFQUFFQyxNQUFNLEVBQUVDLFlBQVk7SUFDaEcsSUFBSVksb0NBQW9DO0lBRXhDLElBQUksQ0FBQ2IsUUFBUTtRQUNYLElBQU1HLDJCQUEyQkYsYUFBYUcsWUFBWSxDQUFDTjtRQUUzREcsYUFBYUssS0FBSyxDQUFDLEFBQUMsa0JBQTBDLE9BQXpCSCwwQkFBeUIscUNBQW1DTDtRQUVqRyxJQUFNZ0IsbUJBQW1CQyxJQUFBQSw2QkFBa0IsRUFBQ2pCLHlCQUN0Q2tCLG1CQUFtQnpCLHNCQUFzQk8seUJBQ3pDbUIsZUFBZTVCLGtCQUFrQlMseUJBQ2pDb0IsVUFBVUosa0JBQWtCLEdBQUc7UUFFckMsSUFBSSxPQUFPO1FBQ1QsR0FBRztRQUNMLE9BQU8sSUFBSUUscUJBQXFCLE1BQU07WUFDcEMsSUFBTUcsNkJBQTZCekIsZ0NBQWdDSSx5QkFDN0RzQiwrQ0FBK0NELDJCQUEyQlQsSUFBSSxDQUFDLFNBQUNXO2dCQUM5RSxJQUFNRCwrQ0FBK0NKLGlCQUFpQk0sS0FBSyxDQUFDRDtnQkFFNUUsSUFBSUQsOENBQThDO29CQUNoRCxPQUFPO2dCQUNUO1lBQ0Y7WUFFTixJQUFJLENBQUNGLFNBQVM7Z0JBQ1osSUFBSUUsOENBQThDO29CQUNoRFAsb0NBQW9DO2dCQUN0QztZQUNGO1lBRUEsSUFBSUssU0FBUztnQkFDWCxJQUFJLENBQUNFLDhDQUE4QztvQkFDakRQLG9DQUFvQztnQkFDdEM7WUFDRjtRQUNGLE9BQU8sSUFBSUksaUJBQWlCLE1BQU07WUFDaEMsSUFBTU0seUJBQXlCL0IsNEJBQTRCTSx5QkFDckQwQiwyQ0FBMkNELHVCQUF1QmIsSUFBSSxDQUFDLFNBQUNlO2dCQUN0RSxJQUFNRCwyQ0FBMkNQLGFBQWFLLEtBQUssQ0FBQ0c7Z0JBRXBFLElBQUlELDBDQUEwQztvQkFDNUMsT0FBTztnQkFDVDtZQUNGO1lBRU4sSUFBSSxDQUFDTixTQUFTO2dCQUNaLElBQUlNLDBDQUEwQztvQkFDNUNYLG9DQUFvQztnQkFDdEM7WUFDRjtZQUVBLElBQUlLLFNBQVM7Z0JBQ1gsSUFBSSxDQUFDTSwwQ0FBMEM7b0JBQzdDWCxvQ0FBb0M7Z0JBQ3RDO1lBQ0Y7UUFDRjtRQUVBLElBQUlBLG1DQUFtQztZQUNyQ1osYUFBYVcsS0FBSyxDQUFDLEFBQUMsb0JBQTRDLE9BQXpCVCwwQkFBeUIsbUNBQWlDTDtRQUNuRztJQUNGO0lBRUEsT0FBT2U7QUFDVDtBQUVBLFNBQVNoQiwrQkFBK0JDLHNCQUFzQixFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUMvRixJQUFJeUI7SUFFSixJQUFJMUIsUUFBUTtRQUNWLElBQU1HLDJCQUEyQkYsYUFBYUcsWUFBWSxDQUFDTjtRQUUzREcsYUFBYUssS0FBSyxDQUFDLEFBQUMsa0JBQTBDLE9BQXpCSCwwQkFBeUIsb0NBQWtDTDtRQUVoRzRCLG1DQUFtQztRQUVuQyxJQUFJQSxrQ0FBa0M7WUFDcEN6QixhQUFhVyxLQUFLLENBQUMsQUFBQyxvQkFBNEMsT0FBekJULDBCQUF5QixrQ0FBZ0NMO1FBQ2xHO0lBQ0Y7SUFFQSxPQUFPNEI7QUFDVCJ9
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2NvbnRhaW5lZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IG1ldGFMZXZlbFZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9tZXRhTGV2ZWxcIjtcblxuaW1wb3J0IHsgaXNBc3NlcnRpb25OZWdhdGVkIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9hc3NlcnRpb25cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29udGFpbmVkQXNzZXJ0aW9uL3Rlcm0vdmFyaWFibGUhXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9mcmFtZS9zdGF0ZW1lbnQhL21ldGF2YXJpYWJsZSFcIiksXG4gICAgICBzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9zdGF0ZW1lbnQvL3ZhcmlhYmxlXCIpLFxuICAgICAgc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvY29udGFpbmVkQXNzZXJ0aW9uL3N0YXRlbWVudC8vbWV0YXZhcmlhYmxlXCIpO1xuXG5jb25zdCB2ZXJpZnlDb250YWluZWRBc3NlcnRpb25GdW5jdGlvbnMgPSBbXG4gIHZlcmlmeURlcml2ZWRDb250YWluZWRBc3NlcnRpb24sXG4gIHZlcmlmeVN0YXRlZENvbnRhaW5lZEFzc2VydGlvblxuXTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBjb250YWluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICBzYXZlZFN0YXRlZCA9IHN0YXRlZDsgLy8vXG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGNvbnRhaW5lZCBhc3NlcnRpb24uLi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICBhc3NpZ25tZW50cyA9IG51bGw7IC8vL1xuXG4gIHN0YXRlZCA9IHRydWU7ICAvLy9cblxuICBjb25zdCB2ZXJpZmllZCA9IG1ldGFMZXZlbFZlcmlmaWVyLnZlcmlmeShjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gIHN0YXRlZCA9IHNhdmVkU3RhdGVkOyAvLy9cblxuICBpZiAodmVyaWZpZWQpIHtcbiAgICBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9ucy5zb21lKCh2ZXJpZnlDb250YWluZWRBc3NlcnRpb25GdW5jdGlvbikgPT4ge1xuICAgICAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlDb250YWluZWRBc3NlcnRpb25GdW5jdGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBpZiAoY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKCFzdGF0ZWQpIHtcbiAgICBjb25zdCBjb250YWluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGRlcml2ZWQgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGlmIChtZXRhdmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBhc3NlcnRpb25OZWdhdGVkID0gaXNBc3NlcnRpb25OZWdhdGVkKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgICBuZWdhdGVkID0gYXNzZXJ0aW9uTmVnYXRlZDsgLy8vXG5cbiAgICAgIGlmIChmYWxzZSkge1xuICAgICAgICAvLy9cbiAgICAgIH0gZWxzZSBpZiAobWV0YXZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlcyA9IHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgICAgIHZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlID0gc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZXMuc29tZSgoc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZS5tYXRjaChzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKTtcblxuICAgICAgICAgICAgICAgIGlmICh2YXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcblxuICAgICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgICBpZiAodmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGUpIHtcbiAgICAgICAgICAgIGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG5lZ2F0ZWQpIHtcbiAgICAgICAgICBpZiAoIXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgICBkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgc3RhdGVtZW50VmFyaWFibGVOb2RlcyA9IHN0YXRlbWVudFZhcmlhYmxlTm9kZXNRdWVyeShjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICAgICAgdmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudFZhcmlhYmxlTm9kZSA9IHN0YXRlbWVudFZhcmlhYmxlTm9kZXMuc29tZSgoc3RhdGVtZW50VmFyaWFibGVOb2RlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudFZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZS5tYXRjaChzdGF0ZW1lbnRWYXJpYWJsZU5vZGUpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKCFuZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKHZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgICAgIGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG5lZ2F0ZWQpIHtcbiAgICAgICAgICBpZiAoIXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgICAgIGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YXRlZENvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkO1xuXG4gIGlmIChzdGF0ZWQpIHtcbiAgICBjb25zdCBjb250YWluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG5cbiAgICBpZiAoc3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlDb250YWluZWRBc3NlcnRpb24iLCJ2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsInN0YXRlbWVudFZhcmlhYmxlTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5IiwidmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zIiwidmVyaWZ5RGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlZENvbnRhaW5lZEFzc2VydGlvbiIsImNvbnRhaW5lZEFzc2VydGlvbk5vZGUiLCJhc3NpZ25tZW50cyIsInN0YXRlZCIsImxvY2FsQ29udGV4dCIsImNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwic2F2ZWRTdGF0ZWQiLCJ0cmFjZSIsInZlcmlmaWVkIiwibWV0YUxldmVsVmVyaWZpZXIiLCJ2ZXJpZnkiLCJzb21lIiwidmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb24iLCJkZWJ1ZyIsImRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCIsIm1ldGF2YXJpYWJsZU5vZGUiLCJhc3NlcnRpb25OZWdhdGVkIiwiaXNBc3NlcnRpb25OZWdhdGVkIiwidmFyaWFibGVOb2RlIiwibmVnYXRlZCIsInN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzIiwidmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlIiwibWF0Y2giLCJzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzIiwidmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudFZhcmlhYmxlTm9kZSIsInN0YXRlbWVudFZhcmlhYmxlTm9kZSIsInN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUF3QkE7OztnRUFmTTt5QkFFSztxQkFDRzs7Ozs7O0FBRXRDLElBQU1DLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyx1Q0FDOUJD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
|
|
@@ -8,9 +8,7 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return verifyDefinedAssertion;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var _term = /*#__PURE__*/ _interop_require_default(require("../../verify/term"));
|
|
12
11
|
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
13
|
-
var _array = require("../../utilities/array");
|
|
14
12
|
var _query = require("../../utilities/query");
|
|
15
13
|
var _assertion = require("../../utilities/assertion");
|
|
16
14
|
var _name = require("../../utilities/name");
|
|
@@ -19,7 +17,7 @@ function _interop_require_default(obj) {
|
|
|
19
17
|
default: obj
|
|
20
18
|
};
|
|
21
19
|
}
|
|
22
|
-
var variableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/term/variable!"), metavariableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/frame
|
|
20
|
+
var variableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/term/variable!"), metavariableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/frame/statement!/metavariable!");
|
|
23
21
|
var verifyDefinedAssertionFunctions = [
|
|
24
22
|
verifyDerivedDefinedAssertion,
|
|
25
23
|
verifyStatedDefinedAssertion
|
|
@@ -50,31 +48,34 @@ function verifyDerivedDefinedAssertion(definedAssertionNode, assignments, stated
|
|
|
50
48
|
if (!stated) {
|
|
51
49
|
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
52
50
|
localContext.trace("Verifying the '".concat(definedAssertionString, "' derived defined assertion..."), definedAssertionNode);
|
|
53
|
-
var
|
|
54
|
-
if (
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
if (
|
|
59
|
-
|
|
60
|
-
|
|
51
|
+
var metavariableNode = metavariableNodeQuery(definedAssertionNode);
|
|
52
|
+
if (metavariableNode !== null) {
|
|
53
|
+
var assertionNegated = (0, _assertion.isAssertionNegated)(definedAssertionNode), variableNode = variableNodeQuery(definedAssertionNode);
|
|
54
|
+
if (false) {
|
|
55
|
+
///
|
|
56
|
+
} else if (metavariableNode !== null) {
|
|
57
|
+
var metavariableName = (0, _name.metavariableNameFromMetavariableNode)(metavariableNode), metavariableDefinedByMetavariableName = localContext.isMetavariableDefinedByMetavariableName(metavariableName);
|
|
58
|
+
if (!assertionNegated) {
|
|
59
|
+
if (metavariableDefinedByMetavariableName) {
|
|
60
|
+
derivedDefinedAssertionVerified = true;
|
|
61
|
+
}
|
|
61
62
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
if (assertionNegated) {
|
|
64
|
+
if (!metavariableDefinedByMetavariableName) {
|
|
65
|
+
derivedDefinedAssertionVerified = true;
|
|
66
|
+
}
|
|
66
67
|
}
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
68
|
+
} else if (variableNode !== null) {
|
|
69
|
+
var variable = localContext.findVariableByVariableNode(variableNode), variableDefined = localContext.isVariableDefined(variable);
|
|
70
|
+
if (!assertionNegated) {
|
|
71
|
+
if (variableDefined) {
|
|
72
|
+
derivedDefinedAssertionVerified = true;
|
|
73
|
+
}
|
|
73
74
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
if (assertionNegated) {
|
|
76
|
+
if (!variableDefined) {
|
|
77
|
+
derivedDefinedAssertionVerified = true;
|
|
78
|
+
}
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
81
|
}
|
|
@@ -96,14 +97,5 @@ function verifyStatedDefinedAssertion(definedAssertionNode, assignments, stated,
|
|
|
96
97
|
}
|
|
97
98
|
return statedDefinedAssertionVerified;
|
|
98
99
|
}
|
|
99
|
-
function termFromTermNode(termNode, localContext) {
|
|
100
|
-
var terms = [];
|
|
101
|
-
(0, _term.default)(termNode, terms, localContext, function() {
|
|
102
|
-
var verifiedAhead = true;
|
|
103
|
-
return verifiedAhead;
|
|
104
|
-
});
|
|
105
|
-
var firstTerm = (0, _array.first)(terms), term = firstTerm; ///
|
|
106
|
-
return term;
|
|
107
|
-
}
|
|
108
100
|
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2RlZmluZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlUZXJtIGZyb20gXCIuLi8uLi92ZXJpZnkvdGVybVwiO1xuaW1wb3J0IG1ldGFMZXZlbFZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9tZXRhTGV2ZWxcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBpc0Fzc2VydGlvbk5lZ2F0ZWQgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2Fzc2VydGlvblwiO1xuaW1wb3J0IHsgbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9uYW1lXCI7XG5cbmNvbnN0IHZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2RlZmluZWRBc3NlcnRpb24vdGVybS92YXJpYWJsZSFcIiksXG4gICAgICBtZXRhdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZGVmaW5lZEFzc2VydGlvbi9mcmFtZVstMV0vbWV0YXZhcmlhYmxlIVwiKTtcblxuY29uc3QgdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZERlZmluZWRBc3NlcnRpb24sXG4gIHZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb25cbl07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeURlZmluZWRBc3NlcnRpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xuXG4gIGNvbnN0IGRlZmluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGRlZmluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgc2F2ZWRTdGF0ZWQgPSBzdGF0ZWQ7IC8vLztcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIGRlZmluZWQgYXNzZXJ0aW9uLi4uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gIGFzc2lnbm1lbnRzID0gbnVsbDsgLy8vXG5cbiAgc3RhdGVkID0gdHJ1ZTsgIC8vL1xuXG4gIGNvbnN0IHZlcmlmaWVkID0gbWV0YUxldmVsVmVyaWZpZXIudmVyaWZ5KGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gIHN0YXRlZCA9IHNhdmVkU3RhdGVkOyAvLy9cblxuICBpZiAodmVyaWZpZWQpIHtcbiAgICBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zLnNvbWUoKHZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbikgPT4ge1xuICAgICAgY29uc3QgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaWYgKGRlZmluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZWZpbmVkIGFzc2VydGlvbi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gIH1cblxuICByZXR1cm4gZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbihkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKCFzdGF0ZWQpIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIGRlcml2ZWQgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBhc3NlcnRpb25OZWdhdGVkID0gaXNBc3NlcnRpb25OZWdhdGVkKGRlZmluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KGRlZmluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICB2YXJpYWJsZU5vZGUgPSB2YXJpYWJsZU5vZGVRdWVyeShkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAobWV0YXZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgIG1ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUgPSBsb2NhbENvbnRleHQuaXNNZXRhdmFyaWFibGVEZWZpbmVkQnlNZXRhdmFyaWFibGVOYW1lKG1ldGF2YXJpYWJsZU5hbWUpO1xuXG4gICAgICBpZiAoIWFzc2VydGlvbk5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKG1ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoYXNzZXJ0aW9uTmVnYXRlZCkge1xuICAgICAgICBpZiAoIW1ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB2YXJpYWJsZSA9IGxvY2FsQ29udGV4dC5maW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgICAgdmFyaWFibGVEZWZpbmVkID0gbG9jYWxDb250ZXh0LmlzVmFyaWFibGVEZWZpbmVkKHZhcmlhYmxlKTtcblxuICAgICAgaWYgKCFhc3NlcnRpb25OZWdhdGVkKSB7XG4gICAgICAgIGlmICh2YXJpYWJsZURlZmluZWQpIHtcbiAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoYXNzZXJ0aW9uTmVnYXRlZCkge1xuICAgICAgICBpZiAoIXZhcmlhYmxlRGVmaW5lZCkge1xuICAgICAgICAgIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZXJpdmVkIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5U3RhdGVkRGVmaW5lZEFzc2VydGlvbihkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG5cbiAgaWYgKHN0YXRlZCkge1xuICAgIGNvbnN0IGRlZmluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIGRlZmluZWQgYXNzZXJ0aW9uLi4uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcblxuICAgIGlmIChzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgZGVmaW5lZCBhc3NlcnRpb24uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHRlcm1Gcm9tVGVybU5vZGUodGVybU5vZGUsIGxvY2FsQ29udGV4dCkge1xuICBjb25zdCB0ZXJtcyA9IFtdO1xuXG4gIHZlcmlmeVRlcm0odGVybU5vZGUsIHRlcm1zLCBsb2NhbENvbnRleHQsICgpID0+IHtcbiAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICB9KTtcblxuICBjb25zdCBmaXJzdFRlcm0gPSBmaXJzdCh0ZXJtcyksXG4gICAgICAgIHRlcm0gPSBmaXJzdFRlcm07IC8vL1xuXG4gIHJldHVybiB0ZXJtO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeURlZmluZWRBc3NlcnRpb24iLCJ2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsInZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb24iLCJkZWZpbmVkQXNzZXJ0aW9uTm9kZSIsImFzc2lnbm1lbnRzIiwic3RhdGVkIiwibG9jYWxDb250ZXh0IiwiZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiZGVmaW5lZEFzc2VydGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInNhdmVkU3RhdGVkIiwidHJhY2UiLCJ2ZXJpZmllZCIsIm1ldGFMZXZlbFZlcmlmaWVyIiwidmVyaWZ5Iiwic29tZSIsInZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbiIsImRlYnVnIiwiZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCIsImFzc2VydGlvbk5lZ2F0ZWQiLCJpc0Fzc2VydGlvbk5lZ2F0ZWQiLCJtZXRhdmFyaWFibGVOb2RlIiwidmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTmFtZSIsIm1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUiLCJpc01ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUiLCJ2YXJpYWJsZSIsImZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlIiwidmFyaWFibGVEZWZpbmVkIiwiaXNWYXJpYWJsZURlZmluZWQiLCJzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiLCJ0ZXJtRnJvbVRlcm1Ob2RlIiwidGVybU5vZGUiLCJ0ZXJtcyIsInZlcmlmeVRlcm0iLCJ2ZXJpZmllZEFoZWFkIiwiZmlyc3RUZXJtIiwiZmlyc3QiLCJ0ZXJtIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFrQkE7OztlQUF3QkE7OzsyREFoQkQ7Z0VBQ087cUJBRVI7cUJBQ0k7eUJBQ1M7b0JBQ2tCOzs7Ozs7QUFFckQsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDLHFDQUM5QkMsd0JBQXdCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRXhDLElBQU1FLGtDQUFrQztJQUN0Q0M7SUFDQUM7Q0FDRDtBQUVjLFNBQVNOLHVCQUF1Qk8sb0JBQW9CLEVBQUVDLFdBQVcsRUFBRUMsTUFBTSxFQUFFQyxZQUFZO0lBQ3BHLElBQUlDO0lBRUosSUFBTUMseUJBQXlCRixhQUFhRyxZQUFZLENBQUNOLHVCQUNuRE8sY0FBY0wsUUFBUSxJQUFJO0lBRWhDQyxhQUFhSyxLQUFLLENBQUMsQUFBQyxrQkFBd0MsT0FBdkJILHdCQUF1QiwyQkFBeUJMO0lBRXJGQyxjQUFjLE1BQU0sR0FBRztJQUV2QkMsU0FBUyxNQUFPLEdBQUc7SUFFbkIsSUFBTU8sV0FBV0Msa0JBQWlCLENBQUNDLE1BQU0sQ0FBQ1gsc0JBQXNCQyxhQUFhQyxRQUFRQztJQUVyRkQsU0FBU0ssYUFBYSxHQUFHO0lBRXpCLElBQUlFLFVBQVU7UUFDWkwsMkJBQTJCUCxnQ0FBZ0NlLElBQUksQ0FBQyxTQUFDQztZQUMvRCxJQUFNVCwyQkFBMkJTLCtCQUErQmIsc0JBQXNCQyxhQUFhQyxRQUFRQztZQUUzRyxJQUFJQywwQkFBMEI7Z0JBQzVCLE9BQU87WUFDVDtRQUNGO0lBQ0Y7SUFFQSxJQUFJQSwwQkFBMEI7UUFDNUJELGFBQWFXLEtBQUssQ0FBQyxBQUFDLG9CQUEwQyxPQUF2QlQsd0JBQXVCLHlCQUF1Qkw7SUFDdkY7SUFFQSxPQUFPSTtBQUNUO0FBRUEsU0FBU04sOEJBQThCRSxvQkFBb0IsRUFBRUMsV0FBVyxFQUFFQyxNQUFNLEVBQUVDLFlBQVk7SUFDNUYsSUFBSVksa0NBQWtDO0lBRXRDLElBQUksQ0FBQ2IsUUFBUTtRQUNYLElBQU1HLHlCQUF5QkYsYUFBYUcsWUFBWSxDQUFDTjtRQUV6REcsYUFBYUssS0FBSyxDQUFDLEFBQUMsa0JBQXdDLE9BQXZCSCx3QkFBdUIsbUNBQWlDTDtRQUU3RixJQUFNZ0IsbUJBQW1CQyxJQUFBQSw2QkFBa0IsRUFBQ2pCLHVCQUN0Q2tCLG1CQUFtQnRCLHNCQUFzQkksdUJBQ3pDbUIsZUFBZXpCLGtCQUFrQk07UUFFdkMsSUFBSSxPQUFPO1FBQ1QsR0FBRztRQUNMLE9BQU8sSUFBSWtCLHFCQUFxQixNQUFNO1lBQ3BDLElBQU1FLG1CQUFtQkMsSUFBQUEsMENBQW9DLEVBQUNILG1CQUN4REksd0NBQXdDbkIsYUFBYW9CLHVDQUF1QyxDQUFDSDtZQUVuRyxJQUFJLENBQUNKLGtCQUFrQjtnQkFDckIsSUFBSU0sdUNBQXVDO29CQUN6Q1Asa0NBQWtDO2dCQUNwQztZQUNGO1lBRUEsSUFBSUMsa0JBQWtCO2dCQUNwQixJQUFJLENBQUNNLHVDQUF1QztvQkFDMUNQLGtDQUFrQztnQkFDcEM7WUFDRjtRQUNGLE9BQU8sSUFBSUksaUJBQWlCLE1BQU07WUFDaEMsSUFBTUssV0FBV3JCLGFBQWFzQiwwQkFBMEIsQ0FBQ04sZUFDbkRPLGtCQUFrQnZCLGFBQWF3QixpQkFBaUIsQ0FBQ0g7WUFFdkQsSUFBSSxDQUFDUixrQkFBa0I7Z0JBQ3JCLElBQUlVLGlCQUFpQjtvQkFDbkJYLGtDQUFrQztnQkFDcEM7WUFDRjtZQUVBLElBQUlDLGtCQUFrQjtnQkFDcEIsSUFBSSxDQUFDVSxpQkFBaUI7b0JBQ3BCWCxrQ0FBa0M7Z0JBQ3BDO1lBQ0Y7UUFDRjtRQUVBLElBQUlBLGlDQUFpQztZQUNuQ1osYUFBYVcsS0FBSyxDQUFDLEFBQUMsb0JBQTBDLE9BQXZCVCx3QkFBdUIsaUNBQStCTDtRQUMvRjtJQUNGO0lBRUEsT0FBT2U7QUFDVDtBQUVBLFNBQVNoQiw2QkFBNkJDLG9CQUFvQixFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUMzRixJQUFJeUI7SUFFSixJQUFJMUIsUUFBUTtRQUNWLElBQU1HLHlCQUF5QkYsYUFBYUcsWUFBWSxDQUFDTjtRQUV6REcsYUFBYUssS0FBSyxDQUFDLEFBQUMsa0JBQXdDLE9BQXZCSCx3QkFBdUIsa0NBQWdDTDtRQUU1RjRCLGlDQUFpQztRQUVqQyxJQUFJQSxnQ0FBZ0M7WUFDbEN6QixhQUFhVyxLQUFLLENBQUMsQUFBQyxvQkFBMEMsT0FBdkJULHdCQUF1QixnQ0FBOEJMO1FBQzlGO0lBQ0Y7SUFFQSxPQUFPNEI7QUFDVDtBQUVBLFNBQVNDLGlCQUFpQkMsUUFBUSxFQUFFM0IsWUFBWTtJQUM5QyxJQUFNNEIsUUFBUSxFQUFFO0lBRWhCQyxJQUFBQSxhQUFVLEVBQUNGLFVBQVVDLE9BQU81QixjQUFjO1FBQ3hDLElBQU04QixnQkFBZ0I7UUFFdEIsT0FBT0E7SUFDVDtJQUVBLElBQU1DLFlBQVlDLElBQUFBLFlBQUssRUFBQ0osUUFDbEJLLE9BQU9GLFdBQVcsR0FBRztJQUUzQixPQUFPRTtBQUNUIn0=
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2RlZmluZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBtZXRhTGV2ZWxWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbWV0YUxldmVsXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGlzQXNzZXJ0aW9uTmVnYXRlZCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvYXNzZXJ0aW9uXCI7XG5pbXBvcnQgeyBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL25hbWVcIjtcblxuY29uc3QgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZGVmaW5lZEFzc2VydGlvbi90ZXJtL3ZhcmlhYmxlIVwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9kZWZpbmVkQXNzZXJ0aW9uL2ZyYW1lL3N0YXRlbWVudCEvbWV0YXZhcmlhYmxlIVwiKTtcblxuY29uc3QgdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZERlZmluZWRBc3NlcnRpb24sXG4gIHZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb25cbl07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeURlZmluZWRBc3NlcnRpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xuXG4gIGNvbnN0IGRlZmluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGRlZmluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgc2F2ZWRTdGF0ZWQgPSBzdGF0ZWQ7IC8vLztcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIGRlZmluZWQgYXNzZXJ0aW9uLi4uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gIGFzc2lnbm1lbnRzID0gbnVsbDsgLy8vXG5cbiAgc3RhdGVkID0gdHJ1ZTsgIC8vL1xuXG4gIGNvbnN0IHZlcmlmaWVkID0gbWV0YUxldmVsVmVyaWZpZXIudmVyaWZ5KGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gIHN0YXRlZCA9IHNhdmVkU3RhdGVkOyAvLy9cblxuICBpZiAodmVyaWZpZWQpIHtcbiAgICBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zLnNvbWUoKHZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbikgPT4ge1xuICAgICAgY29uc3QgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaWYgKGRlZmluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZWZpbmVkIGFzc2VydGlvbi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gIH1cblxuICByZXR1cm4gZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbihkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKCFzdGF0ZWQpIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIGRlcml2ZWQgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGlmIChtZXRhdmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBhc3NlcnRpb25OZWdhdGVkID0gaXNBc3NlcnRpb25OZWdhdGVkKGRlZmluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgICBpZiAoZmFsc2UpIHtcbiAgICAgICAgLy8vXG4gICAgICB9IGVsc2UgaWYgKG1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlRGVmaW5lZEJ5TWV0YXZhcmlhYmxlTmFtZSA9IGxvY2FsQ29udGV4dC5pc01ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUobWV0YXZhcmlhYmxlTmFtZSk7XG5cbiAgICAgICAgaWYgKCFhc3NlcnRpb25OZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKG1ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICAgICAgICAgIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhc3NlcnRpb25OZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKCFtZXRhdmFyaWFibGVEZWZpbmVkQnlNZXRhdmFyaWFibGVOYW1lKSB7XG4gICAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHZhcmlhYmxlID0gbG9jYWxDb250ZXh0LmZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgICAgIHZhcmlhYmxlRGVmaW5lZCA9IGxvY2FsQ29udGV4dC5pc1ZhcmlhYmxlRGVmaW5lZCh2YXJpYWJsZSk7XG5cbiAgICAgICAgaWYgKCFhc3NlcnRpb25OZWdhdGVkKSB7XG4gICAgICAgICAgaWYgKHZhcmlhYmxlRGVmaW5lZCkge1xuICAgICAgICAgICAgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFzc2VydGlvbk5lZ2F0ZWQpIHtcbiAgICAgICAgICBpZiAoIXZhcmlhYmxlRGVmaW5lZCkge1xuICAgICAgICAgICAgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZXJpdmVkIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5U3RhdGVkRGVmaW5lZEFzc2VydGlvbihkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG5cbiAgaWYgKHN0YXRlZCkge1xuICAgIGNvbnN0IGRlZmluZWRBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIGRlZmluZWQgYXNzZXJ0aW9uLi4uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcblxuICAgIGlmIChzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgZGVmaW5lZCBhc3NlcnRpb24uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5RGVmaW5lZEFzc2VydGlvbiIsInZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwidmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyIsInZlcmlmeURlcml2ZWREZWZpbmVkQXNzZXJ0aW9uIiwidmVyaWZ5U3RhdGVkRGVmaW5lZEFzc2VydGlvbiIsImRlZmluZWRBc3NlcnRpb25Ob2RlIiwiYXNzaWdubWVudHMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiLCJkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwic2F2ZWRTdGF0ZWQiLCJ0cmFjZSIsInZlcmlmaWVkIiwibWV0YUxldmVsVmVyaWZpZXIiLCJ2ZXJpZnkiLCJzb21lIiwidmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkIiwibWV0YXZhcmlhYmxlTm9kZSIsImFzc2VydGlvbk5lZ2F0ZWQiLCJpc0Fzc2VydGlvbk5lZ2F0ZWQiLCJ2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVOYW1lIiwibWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlRGVmaW5lZEJ5TWV0YXZhcmlhYmxlTmFtZSIsImlzTWV0YXZhcmlhYmxlRGVmaW5lZEJ5TWV0YXZhcmlhYmxlTmFtZSIsInZhcmlhYmxlIiwiZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUiLCJ2YXJpYWJsZURlZmluZWQiLCJpc1ZhcmlhYmxlRGVmaW5lZCIsInN0YXRlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZ0JBOzs7ZUFBd0JBOzs7Z0VBZE07cUJBRUo7eUJBQ1M7b0JBQ2tCOzs7Ozs7QUFFckQsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDLHFDQUM5QkMsd0JBQXdCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRXhDLElBQU1FLGtDQUFrQztJQUN0Q0M7SUFDQUM7Q0FDRDtBQUVjLFNBQVNOLHVCQUF1Qk8sb0JBQW9CLEVB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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "occam-verify-cli",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.984",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/occam-verify-cli",
|
|
7
7
|
"description": "Occam's Verifier",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"argumentative": "^2.0.32",
|
|
14
14
|
"necessary": "^14.0.1",
|
|
15
|
-
"occam-custom-grammars": "^5.0.
|
|
15
|
+
"occam-custom-grammars": "^5.0.861",
|
|
16
16
|
"occam-entities": "^1.0.159",
|
|
17
17
|
"occam-file-system": "^6.0.199",
|
|
18
18
|
"occam-grammar-utilities": "^8.0.214",
|
package/src/constants.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import Constructor from "../constructor";
|
|
4
4
|
import bracketedConstructorTermNode from "../node/term/constructor/bracketed";
|
|
5
|
-
import bracketedConstructorDeclarationTokens from "../tokens/
|
|
5
|
+
import bracketedConstructorDeclarationTokens from "../tokens/constructorTerm/bracketed";
|
|
6
6
|
|
|
7
7
|
import { nodeAsString } from "../utilities/string";
|
|
8
8
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import bracketedCombinatorStatementTokens from "../../../tokens/combinatorStatement/bracketed";
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import { statementNodeFromStatementTokens } from "../../../utilities/node";
|
|
6
6
|
|
|
7
|
-
const bracketedCombinatorStatementNode =
|
|
7
|
+
const bracketedCombinatorStatementNode = statementNodeFromStatementTokens(bracketedCombinatorStatementTokens);
|
|
8
8
|
|
|
9
9
|
export default bracketedCombinatorStatementNode;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import bracketedConstructorTermTokens from "../../../tokens/constructorTerm/bracketed";
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import { termNodeFromTermTokens } from "../../../utilities/node";
|
|
6
6
|
|
|
7
|
-
const bracketedConstructorTermNode =
|
|
7
|
+
const bracketedConstructorTermNode = termNodeFromTermTokens(bracketedConstructorTermTokens);
|
|
8
8
|
|
|
9
9
|
export default bracketedConstructorTermNode;
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
import Combinator from "../combinator";
|
|
4
4
|
import bracketedCombinatorStatementNode from "../node/statement/combinator/bracketed";
|
|
5
|
-
import
|
|
5
|
+
import bracketedCombinatorStatementTokens from "../tokens/combinatorStatement/bracketed";
|
|
6
6
|
|
|
7
7
|
import { nodeAsString } from "../utilities/string";
|
|
8
8
|
|
|
9
9
|
class BracketedCombinator extends Combinator {
|
|
10
10
|
static fromNothing() {
|
|
11
11
|
const node = bracketedCombinatorStatementNode, ///
|
|
12
|
-
tokens =
|
|
12
|
+
tokens = bracketedCombinatorStatementTokens, ///
|
|
13
13
|
string = nodeAsString(node, tokens),
|
|
14
14
|
statementNode = node, ///
|
|
15
15
|
bracketedCombinator = new BracketedCombinator(statementNode, string);
|
package/src/ruleNames.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
export const
|
|
4
|
-
export const
|
|
3
|
+
export const TERM_RULE_NAME = "term";
|
|
4
|
+
export const FRAME_RULE_NAME = "frame";
|
|
5
|
+
export const STATEMENT_RULE_NAME = "statement";
|
|
@@ -7,7 +7,8 @@ import { nodeQuery } from "../utilities/query";
|
|
|
7
7
|
import { stripBracketsFromFrame } from "../utilities/brackets";
|
|
8
8
|
|
|
9
9
|
const frameNodeQuery = nodeQuery("/substitution/frame!"),
|
|
10
|
-
|
|
10
|
+
substitutionMetavariableNodeQuery = nodeQuery("/substitution/metavariable!"),
|
|
11
|
+
frameStatementMetavariableNodeQuery = nodeQuery("/frame/statement/metavariable!");
|
|
11
12
|
|
|
12
13
|
export default class FrameForMetavariableSubstitution extends Substitution {
|
|
13
14
|
constructor(frameNode, metavariableNode, substitution) {
|
|
@@ -101,13 +102,14 @@ export default class FrameForMetavariableSubstitution extends Substitution {
|
|
|
101
102
|
static fromSubstitutionNode(substitutionNode) {
|
|
102
103
|
let frameForMetavariableSubstitution = null;
|
|
103
104
|
|
|
104
|
-
let frameNode = frameNodeQuery(substitutionNode)
|
|
105
|
-
metavariableNode = metavariableNodeQuery(substitutionNode);
|
|
105
|
+
let frameNode = frameNodeQuery(substitutionNode);
|
|
106
106
|
|
|
107
107
|
if (frameNode !== null) {
|
|
108
108
|
frameNode = stripBracketsFromFrame(frameNode); ///
|
|
109
109
|
|
|
110
|
-
const
|
|
110
|
+
const substitutionMetavariableNode = substitutionMetavariableNodeQuery(substitutionNode),
|
|
111
|
+
metavariableNode = substitutionMetavariableNode, ///
|
|
112
|
+
substitution = null;
|
|
111
113
|
|
|
112
114
|
frameForMetavariableSubstitution = new FrameForMetavariableSubstitution(frameNode, metavariableNode, substitution);
|
|
113
115
|
}
|
|
@@ -159,9 +161,11 @@ function substitutionFromSubstitutionNode(substitutionNode) {
|
|
|
159
161
|
function transformFrameNode(frameNode, substitutions) {
|
|
160
162
|
let transformedFrameNode = null;
|
|
161
163
|
|
|
162
|
-
const
|
|
164
|
+
const frameStatementMetavariableNode = frameStatementMetavariableNodeQuery(frameNode);
|
|
165
|
+
|
|
166
|
+
if (frameStatementMetavariableNode !== null) {
|
|
167
|
+
const metavariableNode = frameStatementMetavariableNode; ///
|
|
163
168
|
|
|
164
|
-
if (metavariableNode !== null) {
|
|
165
169
|
substitutions.someSubstitution((substitution) => {
|
|
166
170
|
const substitutionMatchesVariableNode = substitution.matchMetavariableNode(metavariableNode);
|
|
167
171
|
|