occam-verify-cli 0.0.1011 → 0.0.1012
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/combinator.js +9 -2
- package/lib/constructor/bracketed.js +52 -8
- package/lib/constructor.js +64 -18
- package/lib/declaration/constructor.js +90 -0
- package/lib/declaration/metavariable.js +15 -8
- package/lib/declaration/type.js +90 -0
- package/lib/error.js +70 -0
- package/lib/rule.js +8 -7
- package/lib/ruleNames.js +5 -1
- package/lib/statement.js +5 -5
- package/lib/term.js +97 -5
- package/lib/type.js +85 -18
- package/lib/utilities/node.js +10 -3
- package/lib/utilities/tokens.js +8 -1
- package/lib/verifier/termAsConstructor.js +3 -4
- package/lib/verifier/topLevel.js +10 -10
- package/package.json +1 -1
- package/src/combinator.js +13 -3
- package/src/constructor/bracketed.js +15 -12
- package/src/constructor.js +73 -17
- package/src/declaration/constructor.js +49 -0
- package/src/declaration/metavariable.js +12 -7
- package/src/declaration/type.js +49 -0
- package/src/error.js +35 -0
- package/src/rule.js +6 -6
- package/src/ruleNames.js +1 -0
- package/src/statement.js +4 -4
- package/src/term.js +119 -4
- package/src/type.js +113 -17
- package/src/utilities/node.js +20 -7
- package/src/utilities/tokens.js +7 -0
- package/src/verifier/termAsConstructor.js +7 -6
- package/src/verifier/topLevel.js +12 -9
- package/lib/tokens/combinatorFrame/bracketed.js +0 -17
- package/lib/verify/declaration/combinator.js +0 -19
- package/lib/verify/declaration/constructor.js +0 -32
- package/lib/verify/declaration/type.js +0 -65
- package/lib/verify/error.js +0 -18
- package/src/tokens/combinatorFrame/bracketed.js +0 -10
- package/src/verify/declaration/combinator.js +0 -6
- package/src/verify/declaration/constructor.js +0 -36
- package/src/verify/declaration/type.js +0 -85
- package/src/verify/error.js +0 -11
package/lib/utilities/node.js
CHANGED
|
@@ -9,6 +9,9 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
+
constructorDeclarationNodeFromConstructorDeclarationTokens: function() {
|
|
13
|
+
return constructorDeclarationNodeFromConstructorDeclarationTokens;
|
|
14
|
+
},
|
|
12
15
|
metavariableNodeFromMetavariableString: function() {
|
|
13
16
|
return metavariableNodeFromMetavariableString;
|
|
14
17
|
},
|
|
@@ -38,9 +41,9 @@ var _ruleNames = require("../ruleNames");
|
|
|
38
41
|
var _tokens = require("../utilities/tokens");
|
|
39
42
|
var nominalParserFromCombinedCustomGrammar = _occamcustomgrammars.parsersUtilities.nominalParserFromCombinedCustomGrammar;
|
|
40
43
|
var combinedCustomGrammar = (0, _customGrammar.combinedCustomGrammarFromNothing)(), nominalParser = nominalParserFromCombinedCustomGrammar(combinedCustomGrammar);
|
|
41
|
-
var statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement");
|
|
44
|
+
var termNodeQuery = (0, _query.nodeQuery)("/constructorDeclaration/term"), statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement");
|
|
42
45
|
function termNodeFromTermString(termString, lexer, parser) {
|
|
43
|
-
var
|
|
46
|
+
var constructorDeclarationString = "Constructor ".concat(termString, "\n"), constructorDeclarationTokens = (0, _tokens.constructorDeclarationTokensFromConstructorDeclarationString)(constructorDeclarationString, lexer), constructorDeclarationNode = constructorDeclarationNodeFromConstructorDeclarationTokens(constructorDeclarationTokens, parser), termNode = termNodeQuery(constructorDeclarationNode, constructorDeclarationNode);
|
|
44
47
|
return termNode;
|
|
45
48
|
}
|
|
46
49
|
function statementNodeFromStatementString(statementString, lexer, parser) {
|
|
@@ -67,10 +70,14 @@ function unqualifiedStatementNodeFromUnqualifiedStatementTokens(unqualifiedState
|
|
|
67
70
|
var tokens = unqualifiedStatementTokens, ruleName = _ruleNames.UNQUALIFIED_STATEMENT_RULE_NAME, unqualifiedStatementNode = nodeFromTokensRuleNameAndParser(tokens, ruleName, parser);
|
|
68
71
|
return unqualifiedStatementNode;
|
|
69
72
|
}
|
|
73
|
+
function constructorDeclarationNodeFromConstructorDeclarationTokens(constructorDeclarationTokens, parser) {
|
|
74
|
+
var tokens = constructorDeclarationTokens, ruleName = _ruleNames.CONSTRUCTOR_DECLARATION_RULE_NAME, constructorDeclarationNode = nodeFromTokensRuleNameAndParser(tokens, ruleName, parser);
|
|
75
|
+
return constructorDeclarationNode;
|
|
76
|
+
}
|
|
70
77
|
function nodeFromTokensRuleNameAndParser(tokens, ruleName) {
|
|
71
78
|
var parser = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : nominalParser;
|
|
72
79
|
var ruleMap = parser.getRuleMap(), rule = ruleMap[ruleName], node = parser.parse(tokens, rule);
|
|
73
80
|
return node;
|
|
74
81
|
}
|
|
75
82
|
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcGFyc2Vyc1V0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1jdXN0b20tZ3JhbW1hcnNcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmcgfSBmcm9tIFwiLi9jdXN0b21HcmFtbWFyXCI7XG5pbXBvcnQgeyBURVJNX1JVTEVfTkFNRSxcbiAgICAgICAgIE1FVEFWQVJJQUJMRV9SVUxFX05BTUUsXG4gICAgICAgICBVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FLFxuICAgICAgICAgQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuaW1wb3J0IHsgbWV0YXZhcmlhYmxlVG9rZW5zRnJvbU1ldGF2YXJpYWJsZVN0cmluZyxcbiAgICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nLFxuICAgICAgICAgY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vuc0Zyb21Db25zdHJ1Y3RvckRlY2xhcmF0aW9uU3RyaW5nIH0gZnJvbSBcIi4uL3V0aWxpdGllcy90b2tlbnNcIjtcblxuY29uc3QgeyBub21pbmFsUGFyc2VyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciB9ID0gcGFyc2Vyc1V0aWxpdGllcztcblxuY29uc3QgY29tYmluZWRDdXN0b21HcmFtbWFyID0gY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmcoKSxcbiAgICAgIG5vbWluYWxQYXJzZXIgPSBub21pbmFsUGFyc2VyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hcihjb21iaW5lZEN1c3RvbUdyYW1tYXIpO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbnN0cnVjdG9yRGVjbGFyYXRpb24vdGVybVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZFN0YXRlbWVudC9zdGF0ZW1lbnRcIik7XG5cbmV4cG9ydCBmdW5jdGlvbiB0ZXJtTm9kZUZyb21UZXJtU3RyaW5nKHRlcm1TdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgY29uc3RydWN0b3JEZWNsYXJhdGlvblN0cmluZyA9IGBDb25zdHJ1Y3RvciAke3Rlcm1TdHJpbmd9XG5gLFxuICAgICAgICBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zID0gY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vuc0Zyb21Db25zdHJ1Y3RvckRlY2xhcmF0aW9uU3RyaW5nKGNvbnN0cnVjdG9yRGVjbGFyYXRpb25TdHJpbmcsIGxleGVyKSxcbiAgICAgICAgY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUgPSBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZUZyb21Db25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zKGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMsIHBhcnNlciksXG4gICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeShjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSwgY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUpO1xuXG4gIHJldHVybiB0ZXJtTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0YXRlbWVudE5vZGVGcm9tU3RhdGVtZW50U3RyaW5nKHN0YXRlbWVudFN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCB1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyA9IGAke3N0YXRlbWVudFN0cmluZ31cbmAsXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zID0gdW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnNGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcodW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlID0gdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zKHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zLCBwYXJzZXIpLFxuICAgICAgICBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSk7XG5cbiAgcmV0dXJuIHN0YXRlbWVudE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhdmFyaWFibGVOb2RlRnJvbU1ldGF2YXJpYWJsZVN0cmluZyhtZXRhdmFyaWFibGVTdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgbWV0YXZhcmlhYmxlVG9rZW5zID0gbWV0YXZhcmlhYmxlVG9rZW5zRnJvbU1ldGF2YXJpYWJsZVN0cmluZyhtZXRhdmFyaWFibGVTdHJpbmcsIGxleGVyKSxcbiAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVGcm9tTWV0YXZhcmlhYmxlVG9rZW5zKG1ldGF2YXJpYWJsZVRva2VucywgcGFyc2VyKTtcblxuICByZXR1cm4gbWV0YXZhcmlhYmxlTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyh1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCB1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucyA9IHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zRnJvbVVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nKHVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nLCBsZXhlciksXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZFN0YXRlbWVudFRva2Vucyh1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucywgcGFyc2VyKTtcblxuICByZXR1cm4gdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGVybU5vZGVGcm9tVGVybVRva2Vucyh0ZXJtVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgdG9rZW5zID0gdGVybVRva2VucywgIC8vL1xuICAgICAgICBydWxlTmFtZSA9IFRFUk1fUlVMRV9OQU1FLFxuICAgICAgICB0ZXJtTm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyKTtcblxuICByZXR1cm4gdGVybU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhdmFyaWFibGVOb2RlRnJvbU1ldGF2YXJpYWJsZVRva2VucyhtZXRhdmFyaWFibGVUb2tlbnMsIHBhcnNlcikge1xuICBjb25zdCBydWxlTmFtZSA9IE1FVEFWQVJJQUJMRV9SVUxFX05BTUUsXG4gICAgICAgIG1ldGF2YXJpYWJsZU5vZGUgPSBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKG1ldGF2YXJpYWJsZVRva2VucywgcnVsZU5hbWUsIHBhcnNlcik7XG5cbiAgcmV0dXJuIG1ldGF2YXJpYWJsZU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGVGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnModW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnMsIHBhcnNlcikge1xuICBjb25zdCB0b2tlbnMgPSB1bnF1YWxpZmllZFN0YXRlbWVudFRva2VucywgIC8vL1xuICAgICAgICBydWxlTmFtZSA9IFVOUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IG5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIodG9rZW5zLCBydWxlTmFtZSwgcGFyc2VyKTtcblxuICByZXR1cm4gdW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGVGcm9tQ29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vucyhjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVG9rZW5zLCBwYXJzZXIpIHtcbiAgY29uc3QgdG9rZW5zID0gY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucywgIC8vL1xuICAgICAgICBydWxlTmFtZSA9IENPTlNUUlVDVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUgPSBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKHRva2VucywgcnVsZU5hbWUsIHBhcnNlcik7XG5cbiAgcmV0dXJuIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlO1xufVxuXG5mdW5jdGlvbiBub2RlRnJvbVRva2Vuc1J1bGVOYW1lQW5kUGFyc2VyKHRva2VucywgcnVsZU5hbWUsIHBhcnNlciA9IG5vbWluYWxQYXJzZXIpIHtcbiAgY29uc3QgcnVsZU1hcCA9IHBhcnNlci5nZXRSdWxlTWFwKCksXG4gICAgICAgIHJ1bGUgPSBydWxlTWFwW3J1bGVOYW1lXSxcbiAgICAgICAgbm9kZSA9IHBhcnNlci5wYXJzZSh0b2tlbnMsIHJ1bGUpO1xuXG4gIHJldHVybiBub2RlO1xufVxuIl0sIm5hbWVzIjpbImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlRnJvbUNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMiLCJtZXRhdmFyaWFibGVOb2RlRnJvbU1ldGF2YXJpYWJsZVN0cmluZyIsIm1ldGF2YXJpYWJsZU5vZGVGcm9tTWV0YXZhcmlhYmxlVG9rZW5zIiwic3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRTdHJpbmciLCJ0ZXJtTm9kZUZyb21UZXJtU3RyaW5nIiwidGVybU5vZGVGcm9tVGVybVRva2VucyIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZUZyb21VbnF1YWxpZmllZFN0YXRlbWVudFRva2VucyIsIm5vbWluYWxQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwicGFyc2Vyc1V0aWxpdGllcyIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsImNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nIiwibm9taW5hbFBhcnNlciIsInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJ0ZXJtU3RyaW5nIiwibGV4ZXIiLCJwYXJzZXIiLCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uU3RyaW5nIiwiY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2VucyIsImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnNGcm9tQ29uc3RydWN0b3JEZWNsYXJhdGlvblN0cmluZyIsImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlIiwidGVybU5vZGUiLCJzdGF0ZW1lbnRTdHJpbmciLCJ1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsInVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnRUb2tlbnNGcm9tVW5xdWFsaWZpZWRTdGF0ZW1lbnRTdHJpbmciLCJ1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnROb2RlIiwibWV0YXZhcmlhYmxlU3RyaW5nIiwibWV0YXZhcmlhYmxlVG9rZW5zIiwibWV0YXZhcmlhYmxlVG9rZW5zRnJvbU1ldGF2YXJpYWJsZVN0cmluZyIsIm1ldGF2YXJpYWJsZU5vZGUiLCJ0ZXJtVG9rZW5zIiwidG9rZW5zIiwicnVsZU5hbWUiLCJURVJNX1JVTEVfTkFNRSIsIm5vZGVGcm9tVG9rZW5zUnVsZU5hbWVBbmRQYXJzZXIiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwiVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSIsIkNPTlNUUlVDVE9SX0RFQ0xBUkFUSU9OX1JVTEVfTkFNRSIsInJ1bGVNYXAiLCJnZXRSdWxlTWFwIiwicnVsZSIsIm5vZGUiLCJwYXJzZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBK0VnQkEsMERBQTBEO2VBQTFEQTs7SUFyQ0FDLHNDQUFzQztlQUF0Q0E7O0lBc0JBQyxzQ0FBc0M7ZUFBdENBOztJQWhDQUMsZ0NBQWdDO2VBQWhDQTs7SUFWQUMsc0JBQXNCO2VBQXRCQTs7SUFrQ0FDLHNCQUFzQjtlQUF0QkE7O0lBUEFDLHNEQUFzRDtlQUF0REE7O0lBc0JBQyxzREFBc0Q7ZUFBdERBOzs7bUNBckVpQjtxQkFFUDs2QkFDdUI7eUJBSUM7c0JBRzJCO0FBRTdFLElBQU0sQUFBRUMseUNBQTJDQyxxQ0FBZ0IsQ0FBM0REO0FBRVIsSUFBTUUsd0JBQXdCQyxJQUFBQSwrQ0FBZ0MsS0FDeERDLGdCQUFnQkosdUNBQXVDRTtBQUU3RCxJQUFNRyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsaUNBQzFCQyxxQkFBcUJELElBQUFBLGdCQUFTLEVBQUM7QUFFOUIsU0FBU1YsdUJBQXVCWSxVQUFVLEVBQUVDLEtBQUssRUFBRUMsTUFBTTtJQUM5RCxJQUFNQywrQkFBK0IsQUFBQyxlQUF5QixPQUFYSCxZQUFXLE9BRXpESSwrQkFBK0JDLElBQUFBLG9FQUE0RCxFQUFDRiw4QkFBOEJGLFFBQzFISyw2QkFBNkJ0QiwyREFBMkRvQiw4QkFBOEJGLFNBQ3RISyxXQUFXVixjQUFjUyw0QkFBNEJBO0lBRTNELE9BQU9DO0FBQ1Q7QUFFTyxTQUFTcEIsaUNBQWlDcUIsZUFBZSxFQUFFUCxLQUFLLEVBQUVDLE1BQU07SUFDN0UsSUFBTU8sNkJBQTZCLEFBQUMsR0FBa0IsT0FBaEJELGlCQUFnQixPQUVoREUsNkJBQTZCQyxJQUFBQSxnRUFBd0QsRUFBQ0YsNEJBQTRCUixRQUNsSFcsMkJBQTJCckIsdURBQXVEbUIsNEJBQTRCUixTQUM5R1csZ0JBQWdCZCxtQkFBbUJhO0lBRXpDLE9BQU9DO0FBQ1Q7QUFFTyxTQUFTNUIsdUNBQXVDNkIsa0JBQWtCLEVBQUViLEtBQUssRUFBRUMsTUFBTTtJQUN0RixJQUFNYSxxQkFBcUJDLElBQUFBLGdEQUF3QyxFQUFDRixvQkFBb0JiLFFBQ2xGZ0IsbUJBQW1CL0IsdUNBQXVDNkIsb0JBQW9CYjtJQUVwRixPQUFPZTtBQUNUO0FBRU8sU0FBUzNCLHVEQUF1RG1CLDBCQUEwQixFQUFFUixLQUFLLEVBQUVDLE1BQU07SUFDOUcsSUFBTVEsNkJBQTZCQyxJQUFBQSxnRUFBd0QsRUFBQ0YsNEJBQTRCUixRQUNsSFcsMkJBQTJCckIsdURBQXVEbUIsNEJBQTRCUjtJQUVwSCxPQUFPVTtBQUNUO0FBRU8sU0FBU3ZCLHVCQUF1QjZCLFVBQVUsRUFBRWhCLE1BQU07SUFDdkQsSUFBTWlCLFNBQVNELFlBQ1RFLFdBQVdDLHlCQUFjLEVBQ3pCZCxXQUFXZSxnQ0FBZ0NILFFBQVFDLFVBQVVsQjtJQUVuRSxPQUFPSztBQUNUO0FBRU8sU0FBU3JCLHVDQUF1QzZCLGtCQUFrQixFQUFFYixNQUFNO0lBQy9FLElBQU1rQixXQUFXRyxpQ0FBc0IsRUFDakNOLG1CQUFtQkssZ0NBQWdDUCxvQkFBb0JLLFVBQVVsQjtJQUV2RixPQUFPZTtBQUNUO0FBRU8sU0FBUzFCLHVEQUF1RG1CLDBCQUEwQixFQUFFUixNQUFNO0lBQ3ZHLElBQU1pQixTQUFTVCw0QkFDVFUsV0FBV0ksMENBQStCLEVBQzFDWiwyQkFBMkJVLGdDQUFnQ0gsUUFBUUMsVUFBVWxCO0lBRW5GLE9BQU9VO0FBQ1Q7QUFFTyxTQUFTNUIsMkRBQTJEb0IsNEJBQTRCLEVBQUVGLE1BQU07SUFDN0csSUFBTWlCLFNBQVNmLDhCQUNUZ0IsV0FBV0ssNENBQWlDLEVBQzVDbkIsNkJBQTZCZ0IsZ0NBQWdDSCxRQUFRQyxVQUFVbEI7SUFFckYsT0FBT0k7QUFDVDtBQUVBLFNBQVNnQixnQ0FBZ0NILE1BQU0sRUFBRUMsUUFBUTtRQUFFbEIsU0FBQUEsaUVBQVNOO0lBQ2xFLElBQU04QixVQUFVeEIsT0FBT3lCLFVBQVUsSUFDM0JDLE9BQU9GLE9BQU8sQ0FBQ04sU0FBUyxFQUN4QlMsT0FBTzNCLE9BQU80QixLQUFLLENBQUNYLFFBQVFTO0lBRWxDLE9BQU9DO0FBQ1QifQ==
|
package/lib/utilities/tokens.js
CHANGED
|
@@ -9,6 +9,9 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
+
constructorDeclarationTokensFromConstructorDeclarationString: function() {
|
|
13
|
+
return constructorDeclarationTokensFromConstructorDeclarationString;
|
|
14
|
+
},
|
|
12
15
|
metavariableTokensFromMetavariableString: function() {
|
|
13
16
|
return metavariableTokensFromMetavariableString;
|
|
14
17
|
},
|
|
@@ -35,10 +38,14 @@ function unqualifiedStatementTokensFromUnqualifiedStatementString(unqualifiedSta
|
|
|
35
38
|
var content = unqualifiedStatementString, unqualifiedStatementTokens = tokensFromContentAndLexer(content, lexer);
|
|
36
39
|
return unqualifiedStatementTokens;
|
|
37
40
|
}
|
|
41
|
+
function constructorDeclarationTokensFromConstructorDeclarationString(constructorDeclarationString, lexer) {
|
|
42
|
+
var content = constructorDeclarationString, constructorDeclarationTokens = tokensFromContentAndLexer(content, lexer);
|
|
43
|
+
return constructorDeclarationTokens;
|
|
44
|
+
}
|
|
38
45
|
function tokensFromContentAndLexer(content) {
|
|
39
46
|
var lexer = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : nominalLexer;
|
|
40
47
|
var tokens = lexer.tokenise(content);
|
|
41
48
|
return tokens;
|
|
42
49
|
}
|
|
43
50
|
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdG9rZW5zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBsZXhlcnNVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tY3VzdG9tLWdyYW1tYXJzXCI7XG5cbmltcG9ydCB7IGNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nIH0gZnJvbSBcIi4vY3VzdG9tR3JhbW1hclwiO1xuXG5jb25zdCB7IG5vbWluYWxMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIgfSA9IGxleGVyc1V0aWxpdGllcztcblxuY29uc3QgY29tYmluZWRDdXN0b21HcmFtbWFyID0gY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmcoKSxcbiAgICAgIG5vbWluYWxMZXhlciA9IG5vbWluYWxMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm1Ub2tlbnNGcm9tVGVybVN0cmluZyh0ZXJtU3RyaW5nLCBsZXhlcikge1xuICBjb25zdCBjb250ZW50ID0gdGVybVN0cmluZywgLy8vXG4gICAgICAgIHRlcm1Ub2tlbnMgPSB0b2tlbnNGcm9tQ29udGVudEFuZExleGVyKGNvbnRlbnQsIGxleGVyKTtcblxuICByZXR1cm4gdGVybVRva2Vucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ldGF2YXJpYWJsZVRva2Vuc0Zyb21NZXRhdmFyaWFibGVTdHJpbmcobWV0YXZhcmlhYmxlU3RyaW5nLCBsZXhlcikge1xuICBjb25zdCBtZXRhdmFyaWFibGVDb250ZW50ID0gYCR7bWV0YXZhcmlhYmxlU3RyaW5nfWAsXG4gICAgICAgIG1ldGF2YXJpYWJsZVRva2VucyA9IHRva2Vuc0Zyb21Db250ZW50QW5kTGV4ZXIobWV0YXZhcmlhYmxlQ29udGVudCwgbGV4ZXIpO1xuXG4gIHJldHVybiBtZXRhdmFyaWFibGVUb2tlbnM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1bnF1YWxpZmllZFN0YXRlbWVudFRva2Vuc0Zyb21VbnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyh1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZywgbGV4ZXIpIHtcbiAgY29uc3QgY29udGVudCA9IHVucXVhbGlmaWVkU3RhdGVtZW50U3RyaW5nLCAgLy8vXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zID0gdG9rZW5zRnJvbUNvbnRlbnRBbmRMZXhlcihjb250ZW50LCBsZXhlcik7XG5cbiAgcmV0dXJuIHVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vuc0Zyb21Db25zdHJ1Y3RvckRlY2xhcmF0aW9uU3RyaW5nKGNvbnN0cnVjdG9yRGVjbGFyYXRpb25TdHJpbmcsIGxleGVyKSB7XG4gIGNvbnN0IGNvbnRlbnQgPSBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uU3RyaW5nLCAgLy8vXG4gICAgICAgIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMgPSB0b2tlbnNGcm9tQ29udGVudEFuZExleGVyKGNvbnRlbnQsIGxleGVyKTtcblxuICByZXR1cm4gY29uc3RydWN0b3JEZWNsYXJhdGlvblRva2Vucztcbn1cblxuZnVuY3Rpb24gdG9rZW5zRnJvbUNvbnRlbnRBbmRMZXhlcihjb250ZW50LCBsZXhlciA9IG5vbWluYWxMZXhlcikge1xuICBjb25zdCB0b2tlbnMgPSBsZXhlci50b2tlbmlzZShjb250ZW50KTtcblxuICByZXR1cm4gdG9rZW5zO1xufVxuIl0sIm5hbWVzIjpbImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnNGcm9tQ29uc3RydWN0b3JEZWNsYXJhdGlvblN0cmluZyIsIm1ldGF2YXJpYWJsZVRva2Vuc0Zyb21NZXRhdmFyaWFibGVTdHJpbmciLCJ0ZXJtVG9rZW5zRnJvbVRlcm1TdHJpbmciLCJ1bnF1YWxpZmllZFN0YXRlbWVudFRva2Vuc0Zyb21VbnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsIm5vbWluYWxMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIiLCJsZXhlcnNVdGlsaXRpZXMiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tTm90aGluZyIsIm5vbWluYWxMZXhlciIsInRlcm1TdHJpbmciLCJsZXhlciIsImNvbnRlbnQiLCJ0ZXJtVG9rZW5zIiwidG9rZW5zRnJvbUNvbnRlbnRBbmRMZXhlciIsIm1ldGF2YXJpYWJsZVN0cmluZyIsIm1ldGF2YXJpYWJsZUNvbnRlbnQiLCJtZXRhdmFyaWFibGVUb2tlbnMiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFN0cmluZyIsInVucXVhbGlmaWVkU3RhdGVtZW50VG9rZW5zIiwiY29uc3RydWN0b3JEZWNsYXJhdGlvblN0cmluZyIsImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ub2tlbnMiLCJ0b2tlbnMiLCJ0b2tlbmlzZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBZ0NnQkEsNERBQTREO2VBQTVEQTs7SUFkQUMsd0NBQXdDO2VBQXhDQTs7SUFQQUMsd0JBQXdCO2VBQXhCQTs7SUFjQUMsd0RBQXdEO2VBQXhEQTs7O21DQXZCZ0I7NkJBRWlCO0FBRWpELElBQU0sQUFBRUMsd0NBQTBDQyxvQ0FBZSxDQUF6REQ7QUFFUixJQUFNRSx3QkFBd0JDLElBQUFBLCtDQUFnQyxLQUN4REMsZUFBZUosc0NBQXNDRTtBQUVwRCxTQUFTSix5QkFBeUJPLFVBQVUsRUFBRUMsS0FBSztJQUN4RCxJQUFNQyxVQUFVRixZQUNWRyxhQUFhQywwQkFBMEJGLFNBQVNEO0lBRXRELE9BQU9FO0FBQ1Q7QUFFTyxTQUFTWCx5Q0FBeUNhLGtCQUFrQixFQUFFSixLQUFLO0lBQ2hGLElBQU1LLHNCQUFzQixBQUFDLEdBQXFCLE9BQW5CRCxxQkFDekJFLHFCQUFxQkgsMEJBQTBCRSxxQkFBcUJMO0lBRTFFLE9BQU9NO0FBQ1Q7QUFFTyxTQUFTYix5REFBeURjLDBCQUEwQixFQUFFUCxLQUFLO0lBQ3hHLElBQU1DLFVBQVVNLDRCQUNWQyw2QkFBNkJMLDBCQUEwQkYsU0FBU0Q7SUFFdEUsT0FBT1E7QUFDVDtBQUVPLFNBQVNsQiw2REFBNkRtQiw0QkFBNEIsRUFBRVQsS0FBSztJQUM5RyxJQUFNQyxVQUFVUSw4QkFDVkMsK0JBQStCUCwwQkFBMEJGLFNBQVNEO0lBRXhFLE9BQU9VO0FBQ1Q7QUFFQSxTQUFTUCwwQkFBMEJGLE9BQU87UUFBRUQsUUFBQUEsaUVBQVFGO0lBQ2xELElBQU1hLFNBQVNYLE1BQU1ZLFFBQVEsQ0FBQ1g7SUFFOUIsT0FBT1U7QUFDVCJ9
|
|
@@ -10,7 +10,6 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
var _shim = /*#__PURE__*/ _interop_require_default(require("../shim"));
|
|
12
12
|
var _verifier = /*#__PURE__*/ _interop_require_default(require("../verifier"));
|
|
13
|
-
var _type = /*#__PURE__*/ _interop_require_default(require("../verify/type"));
|
|
14
13
|
var _local = /*#__PURE__*/ _interop_require_default(require("../context/local"));
|
|
15
14
|
var _query = require("../utilities/query");
|
|
16
15
|
function _assert_this_initialized(self) {
|
|
@@ -131,14 +130,14 @@ _define_property(TermAsConstructorVerifier, "maps", [
|
|
|
131
130
|
{
|
|
132
131
|
nodeQuery: termNodeQuery,
|
|
133
132
|
verify: function(termNode, fileContext, verifyAhead) {
|
|
134
|
-
var
|
|
133
|
+
var Term = _shim.default.Term, term = Term.fromTermNode(termNode, fileContext), localContext = _local.default.fromFileContext(fileContext), termVerified = term.verify(localContext, verifyAhead);
|
|
135
134
|
return termVerified;
|
|
136
135
|
}
|
|
137
136
|
},
|
|
138
137
|
{
|
|
139
138
|
nodeQuery: typeNodeQuery,
|
|
140
139
|
verify: function(typeNode, fileContext, verifyAhead) {
|
|
141
|
-
var localContext = _local.default.fromFileContext(fileContext), typeVerified =
|
|
140
|
+
var Type = _shim.default.Type, type = Type.fromTypeNode(typeNode, fileContext), localContext = _local.default.fromFileContext(fileContext), typeVerified = type.verify(localContext, verifyAhead);
|
|
142
141
|
return typeVerified;
|
|
143
142
|
}
|
|
144
143
|
}
|
|
@@ -146,4 +145,4 @@ _define_property(TermAsConstructorVerifier, "maps", [
|
|
|
146
145
|
var termAsConstructorVerifier = new TermAsConstructorVerifier();
|
|
147
146
|
var _default = termAsConstructorVerifier;
|
|
148
147
|
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci90ZXJtQXNDb25zdHJ1Y3Rvci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHNoaW0gZnJvbSBcIi4uL3NoaW1cIjtcbmltcG9ydCBWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXJcIjtcbmltcG9ydCBMb2NhbENvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvbG9jYWxcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm0hXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90eXBlIVwiKTtcblxuY2xhc3MgVGVybUFzQ29uc3RydWN0b3JWZXJpZmllciBleHRlbmRzIFZlcmlmaWVyIHtcbiAgdmVyaWZ5VGVybSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgICBsZXQgdGVybVZlcmlmaWVkQXNDb25zdHJ1Y3RvcjtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IHRlcm1Ob2RlLCAvLy9cbiAgICAgICAgICBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZpZWQgPSB0aGlzLnZlcmlmeUNoaWxkTm9kZXMoY2hpbGROb2RlcywgZmlsZUNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICB9KTtcblxuICAgIHRlcm1WZXJpZmllZEFzQ29uc3RydWN0b3IgPSBjaGlsZE5vZGVzVmVyaWZpZWQ7ICAvLy9cblxuICAgIHJldHVybiB0ZXJtVmVyaWZpZWRBc0NvbnN0cnVjdG9yO1xuICB9XG5cbiAgc3RhdGljIG1hcHMgPSBbXG4gICAge1xuICAgICAgbm9kZVF1ZXJ5OiB0ZXJtTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAodGVybU5vZGUsIGZpbGVDb250ZXh0LCB2ZXJpZnlBaGVhZCkgPT4ge1xuICAgICAgICBjb25zdCB7IFRlcm0gfSA9IHNoaW0sXG4gICAgICAgICAgICAgIHRlcm0gPSBUZXJtLmZyb21UZXJtTm9kZSh0ZXJtTm9kZSwgZmlsZUNvbnRleHQpLFxuICAgICAgICAgICAgICBsb2NhbENvbnRleHQgPSBMb2NhbENvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KSxcbiAgICAgICAgICAgICAgdGVybVZlcmlmaWVkID0gdGVybS52ZXJpZnkobG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgcmV0dXJuIHRlcm1WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogdHlwZU5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHR5cGVOb2RlLCBmaWxlQ29udGV4dCwgdmVyaWZ5QWhlYWQpID0+IHtcbiAgICAgICAgY29uc3QgeyBUeXBlIH0gPSBzaGltLFxuICAgICAgICAgICAgICB0eXBlID0gVHlwZS5mcm9tVHlwZU5vZGUodHlwZU5vZGUsIGZpbGVDb250ZXh0KSxcbiAgICAgICAgICAgICAgbG9jYWxDb250ZXh0ID0gTG9jYWxDb250ZXh0LmZyb21GaWxlQ29udGV4dChmaWxlQ29udGV4dCksXG4gICAgICAgICAgICAgIHR5cGVWZXJpZmllZCA9IHR5cGUudmVyaWZ5KGxvY2FsQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgIHJldHVybiB0eXBlVmVyaWZpZWQ7XG4gICAgICB9XG4gICAgfVxuICBdO1xufVxuXG5jb25zdCB0ZXJtQXNDb25zdHJ1Y3RvclZlcmlmaWVyID0gbmV3IFRlcm1Bc0NvbnN0cnVjdG9yVmVyaWZpZXIoKTtcblxuZXhwb3J0IGRlZmF1bHQgdGVybUFzQ29uc3RydWN0b3JWZXJpZmllcjtcbiJdLCJuYW1lcyI6WyJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidHlwZU5vZGVRdWVyeSIsIlRlcm1Bc0NvbnN0cnVjdG9yVmVyaWZpZXIiLCJ2ZXJpZnlUZXJtIiwidGVybU5vZGUiLCJmaWxlQ29udGV4dCIsInRlcm1WZXJpZmllZEFzQ29uc3RydWN0b3IiLCJub25UZXJtaW5hbE5vZGUiLCJjaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsImNoaWxkTm9kZXNWZXJpZmllZCIsInZlcmlmeUNoaWxkTm9kZXMiLCJ2ZXJpZmllZEFoZWFkIiwiVmVyaWZpZXIiLCJtYXBzIiwidmVyaWZ5IiwidmVyaWZ5QWhlYWQiLCJUZXJtIiwic2hpbSIsInRlcm0iLCJmcm9tVGVybU5vZGUiLCJsb2NhbENvbnRleHQiLCJMb2NhbENvbnRleHQiLCJmcm9tRmlsZUNvbnRleHQiLCJ0ZXJtVmVyaWZpZWQiLCJ0eXBlTm9kZSIsIlR5cGUiLCJ0eXBlIiwiZnJvbVR5cGVOb2RlIiwidHlwZVZlcmlmaWVkIiwidGVybUFzQ29uc3RydWN0b3JWZXJpZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBd0RBOzs7ZUFBQTs7OzJEQXREaUI7K0RBQ0k7NERBQ0k7cUJBRUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFCLElBQU1BLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxXQUMxQkMsZ0JBQWdCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRWhDLElBQUEsQUFBTUUsMENBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO2lDQUFBQTs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsV0FBV0MsUUFBUSxFQUFFQyxXQUFXO2dCQUM5QixJQUFJQztnQkFFSixJQUFNQyxrQkFBa0JILFVBQ2xCSSxhQUFhRCxnQkFBZ0JFLGFBQWEsSUFDMUNDLHFCQUFxQixJQUFJLENBQUNDLGdCQUFnQixDQUFDSCxZQUFZSCxhQUFhO29CQUNsRSxJQUFNTyxnQkFBZ0I7b0JBRXRCLE9BQU9BO2dCQUNUO2dCQUVOTiw0QkFBNEJJLG9CQUFxQixHQUFHO2dCQUVwRCxPQUFPSjtZQUNUOzs7V0FmSUo7RUFBa0NXLGlCQUFRO0FBaUI5QyxpQkFqQklYLDJCQWlCR1ksUUFBTztJQUNaO1FBQ0VkLFdBQVdEO1FBQ1hnQixRQUFRLFNBQUNYLFVBQVVDLGFBQWFXO1lBQzlCLElBQU0sQUFBRUMsT0FBU0MsYUFBSSxDQUFiRCxNQUNGRSxPQUFPRixLQUFLRyxZQUFZLENBQUNoQixVQUFVQyxjQUNuQ2dCLGVBQWVDLGNBQVksQ0FBQ0MsZUFBZSxDQUFDbEIsY0FDNUNtQixlQUFlTCxLQUFLSixNQUFNLENBQUNNLGNBQWNMO1lBRS9DLE9BQU9RO1FBQ1Q7SUFDRjtJQUNBO1FBQ0V4QixXQUFXQztRQUNYYyxRQUFRLFNBQUNVLFVBQVVwQixhQUFhVztZQUM5QixJQUFNLEFBQUVVLE9BQVNSLGFBQUksQ0FBYlEsTUFDRkMsT0FBT0QsS0FBS0UsWUFBWSxDQUFDSCxVQUFVcEIsY0FDbkNnQixlQUFlQyxjQUFZLENBQUNDLGVBQWUsQ0FBQ2xCLGNBQzVDd0IsZUFBZUYsS0FBS1osTUFBTSxDQUFDTSxjQUFjTDtZQUUvQyxPQUFPYTtRQUNUO0lBQ0Y7Q0FDRDtBQUdILElBQU1DLDRCQUE0QixJQUFJNUI7SUFFdEMsV0FBZTRCIn0=
|
package/lib/verifier/topLevel.js
CHANGED
|
@@ -9,19 +9,19 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _rule = /*#__PURE__*/ _interop_require_default(require("../rule"));
|
|
12
|
+
var _error = /*#__PURE__*/ _interop_require_default(require("../error"));
|
|
13
|
+
var _type = /*#__PURE__*/ _interop_require_default(require("../declaration/type"));
|
|
12
14
|
var _combinator = /*#__PURE__*/ _interop_require_default(require("../declaration/combinator"));
|
|
15
|
+
var _constructor = /*#__PURE__*/ _interop_require_default(require("../declaration/constructor"));
|
|
13
16
|
var _metavariable = /*#__PURE__*/ _interop_require_default(require("../declaration/metavariable"));
|
|
14
17
|
var _verifier = /*#__PURE__*/ _interop_require_default(require("../verifier"));
|
|
15
|
-
var _error = /*#__PURE__*/ _interop_require_default(require("../verify/error"));
|
|
16
18
|
var _axiom = /*#__PURE__*/ _interop_require_default(require("../verify/axiom"));
|
|
17
19
|
var _lemma = /*#__PURE__*/ _interop_require_default(require("../verify/lemma"));
|
|
18
20
|
var _theorem = /*#__PURE__*/ _interop_require_default(require("../verify/theorem"));
|
|
19
21
|
var _metaLemma = /*#__PURE__*/ _interop_require_default(require("../verify/metaLemma"));
|
|
20
22
|
var _conjecture = /*#__PURE__*/ _interop_require_default(require("../verify/conjecture"));
|
|
21
23
|
var _metatheorem = /*#__PURE__*/ _interop_require_default(require("../verify/metatheorem"));
|
|
22
|
-
var _type = /*#__PURE__*/ _interop_require_default(require("../verify/declaration/type"));
|
|
23
24
|
var _variable = /*#__PURE__*/ _interop_require_default(require("../verify/declaration/variable"));
|
|
24
|
-
var _constructor = /*#__PURE__*/ _interop_require_default(require("../verify/declaration/constructor"));
|
|
25
25
|
var _query = require("../utilities/query");
|
|
26
26
|
function _assert_this_initialized(self) {
|
|
27
27
|
if (self === void 0) {
|
|
@@ -138,14 +138,14 @@ _define_property(TopLevelVerifier, "maps", [
|
|
|
138
138
|
{
|
|
139
139
|
nodeQuery: errorNodeQuery,
|
|
140
140
|
verify: function(errorNode, fileContext) {
|
|
141
|
-
var
|
|
141
|
+
var error = _error.default.fromErrorNode(errorNode, fileContext), errorVerified = error.verify();
|
|
142
142
|
return errorVerified;
|
|
143
143
|
}
|
|
144
144
|
},
|
|
145
145
|
{
|
|
146
146
|
nodeQuery: ruleNodeQuery,
|
|
147
147
|
verify: function(ruleNode, fileContext) {
|
|
148
|
-
var rule = _rule.default.fromRuleNode(ruleNode, fileContext), ruleVerified = rule.verify(
|
|
148
|
+
var rule = _rule.default.fromRuleNode(ruleNode, fileContext), ruleVerified = rule.verify();
|
|
149
149
|
return ruleVerified;
|
|
150
150
|
}
|
|
151
151
|
},
|
|
@@ -194,7 +194,7 @@ _define_property(TopLevelVerifier, "maps", [
|
|
|
194
194
|
{
|
|
195
195
|
nodeQuery: typeDeclarationNodeQuery,
|
|
196
196
|
verify: function(typeDeclarationNode, fileContext) {
|
|
197
|
-
var
|
|
197
|
+
var typeDeclaration = _type.default.fromTypeDeclarationNode(typeDeclarationNode, fileContext), typeDeclarationVerified = typeDeclaration.verify();
|
|
198
198
|
return typeDeclarationVerified;
|
|
199
199
|
}
|
|
200
200
|
},
|
|
@@ -208,21 +208,21 @@ _define_property(TopLevelVerifier, "maps", [
|
|
|
208
208
|
{
|
|
209
209
|
nodeQuery: combinatorDeclarationNodeQuery,
|
|
210
210
|
verify: function(combinatorDeclarationNode, fileContext) {
|
|
211
|
-
var combinatorDeclaration = _combinator.default.fromCombinatorDeclarationNode(combinatorDeclarationNode, fileContext), combinatorDeclarationVerified = combinatorDeclaration.verify(
|
|
211
|
+
var combinatorDeclaration = _combinator.default.fromCombinatorDeclarationNode(combinatorDeclarationNode, fileContext), combinatorDeclarationVerified = combinatorDeclaration.verify();
|
|
212
212
|
return combinatorDeclarationVerified;
|
|
213
213
|
}
|
|
214
214
|
},
|
|
215
215
|
{
|
|
216
216
|
nodeQuery: constructorDeclarationNodeQuery,
|
|
217
217
|
verify: function(constructorDeclarationNode, fileContext) {
|
|
218
|
-
var
|
|
218
|
+
var constructorDeclaration = _constructor.default.fromConstructorDeclarationNode(constructorDeclarationNode, fileContext), constructorDeclarationVerified = constructorDeclaration.verify();
|
|
219
219
|
return constructorDeclarationVerified;
|
|
220
220
|
}
|
|
221
221
|
},
|
|
222
222
|
{
|
|
223
223
|
nodeQuery: metavariableDeclarationNodeQuery,
|
|
224
224
|
verify: function(metavariableDeclarationNode, fileContext) {
|
|
225
|
-
var metavariableDeclaration = _metavariable.default.fromMetavariableDeclarationNode(metavariableDeclarationNode, fileContext), metavariableDeclarationVerified = metavariableDeclaration.verify(
|
|
225
|
+
var metavariableDeclaration = _metavariable.default.fromMetavariableDeclarationNode(metavariableDeclarationNode, fileContext), metavariableDeclarationVerified = metavariableDeclaration.verify();
|
|
226
226
|
return metavariableDeclarationVerified;
|
|
227
227
|
}
|
|
228
228
|
}
|
|
@@ -230,4 +230,4 @@ _define_property(TopLevelVerifier, "maps", [
|
|
|
230
230
|
var topLevelVerifier = new TopLevelVerifier();
|
|
231
231
|
var _default = topLevelVerifier;
|
|
232
232
|
|
|
233
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci90b3BMZXZlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFJ1bGUgZnJvbSBcIi4uL3J1bGVcIjtcbmltcG9ydCBDb21iaW5hdG9yRGVjbGFyYXRpb24gZnJvbSBcIi4uL2RlY2xhcmF0aW9uL2NvbWJpbmF0b3JcIjtcbmltcG9ydCBNZXRhdmFyaWFibGVEZWNsYXJhdGlvbiBmcm9tIFwiLi4vZGVjbGFyYXRpb24vbWV0YXZhcmlhYmxlXCI7XG5cbmltcG9ydCBWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXJcIjtcbmltcG9ydCB2ZXJpZnlFcnJvciBmcm9tIFwiLi4vdmVyaWZ5L2Vycm9yXCI7XG5pbXBvcnQgdmVyaWZ5QXhpb20gZnJvbSBcIi4uL3ZlcmlmeS9heGlvbVwiO1xuaW1wb3J0IHZlcmlmeUxlbW1hIGZyb20gXCIuLi92ZXJpZnkvbGVtbWFcIjtcbmltcG9ydCB2ZXJpZnlUaGVvcmVtIGZyb20gXCIuLi92ZXJpZnkvdGhlb3JlbVwiO1xuaW1wb3J0IHZlcmlmeU1ldGFMZW1tYSBmcm9tIFwiLi4vdmVyaWZ5L21ldGFMZW1tYVwiO1xuaW1wb3J0IHZlcmlmeUNvbmplY3R1cmUgZnJvbSBcIi4uL3ZlcmlmeS9jb25qZWN0dXJlXCI7XG5pbXBvcnQgdmVyaWZ5TWV0YXRoZW9yZW0gZnJvbSBcIi4uL3ZlcmlmeS9tZXRhdGhlb3JlbVwiO1xuaW1wb3J0IHZlcmlmeVR5cGVEZWNsYXJhdGlvbiBmcm9tIFwiLi4vdmVyaWZ5L2RlY2xhcmF0aW9uL3R5cGVcIjtcbmltcG9ydCB2ZXJpZnlWYXJpYWJsZURlY2xhcmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvZGVjbGFyYXRpb24vdmFyaWFibGVcIjtcbmltcG9ydCB2ZXJpZnlDb25zdHJ1Y3RvckRlY2xhcmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvZGVjbGFyYXRpb24vY29uc3RydWN0b3JcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBlcnJvck5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9lcnJvclwiKSxcbiAgICAgIHJ1bGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcnVsZVwiKSxcbiAgICAgIGF4aW9tTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2F4aW9tXCIpLFxuICAgICAgbGVtbWFOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbGVtbWFcIiksXG4gICAgICB0aGVvcmVtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3RoZW9yZW1cIiksXG4gICAgICBtZXRhTGVtbWFOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YUxlbW1hXCIpLFxuICAgICAgY29uamVjdHVyZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb25qZWN0dXJlXCIpLFxuICAgICAgbWV0YXRoZW9yZW1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXRoZW9yZW1cIiksXG4gICAgICB0eXBlRGVjbGFyYXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdHlwZURlY2xhcmF0aW9uXCIpLFxuICAgICAgdmFyaWFibGVEZWNsYXJhdGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi92YXJpYWJsZURlY2xhcmF0aW9uXCIpLFxuICAgICAgY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbWJpbmF0b3JEZWNsYXJhdGlvblwiKSxcbiAgICAgIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29uc3RydWN0b3JEZWNsYXJhdGlvblwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGF2YXJpYWJsZURlY2xhcmF0aW9uXCIpO1xuXG5jbGFzcyBUb3BMZXZlbFZlcmlmaWVyIGV4dGVuZHMgVmVyaWZpZXIge1xuICB2ZXJpZnkobm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgICBsZXQgdmVyaWZpZWQ7XG5cbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgdmVyaWZpZWQgPSBub25UZXJtaW5hbE5vZGVWZXJpZmllZDsgIC8vL1xuXG4gICAgcmV0dXJuIHZlcmlmaWVkO1xuICB9XG5cbiAgc3RhdGljIG1hcHMgPSBbXG4gICAge1xuICAgICAgbm9kZVF1ZXJ5OiBlcnJvck5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKGVycm9yTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgZXJyb3JWZXJpZmllZCA9IHZlcmlmeUVycm9yKGVycm9yTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiBlcnJvclZlcmlmaWVkO1xuICAgICAgfVxuICAgIH0sXG4gICAge1xuICAgICAgbm9kZVF1ZXJ5OiBydWxlTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAocnVsZU5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IHJ1bGUgPSBSdWxlLmZyb21SdWxlTm9kZShydWxlTm9kZSwgZmlsZUNvbnRleHQpLFxuICAgICAgICAgICAgICBydWxlVmVyaWZpZWQgPSBydWxlLnZlcmlmeShmaWxlQ29udGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIHJ1bGVWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogYXhpb21Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChheGlvbU5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IGF4aW9tVmVyaWZpZWQgPSB2ZXJpZnlBeGlvbShheGlvbU5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gYXhpb21WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogbGVtbWFOb2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChsZW1tYU5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IGxlbW1hVmVyaWZpZWQgPSB2ZXJpZnlMZW1tYShsZW1tYU5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gbGVtbWFWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogdGhlb3JlbU5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHRoZW9yZW1Ob2RlLCBmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCB0aGVvcmVtVmVyaWZpZWQgPSB2ZXJpZnlUaGVvcmVtKHRoZW9yZW1Ob2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIHRoZW9yZW1WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogbWV0YUxlbW1hTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAobWV0YUxlbW1hTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgbWV0YUxlbW1hVmVyaWZpZWQgPSB2ZXJpZnlNZXRhTGVtbWEobWV0YUxlbW1hTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiBtZXRhTGVtbWFWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogY29uamVjdHVyZU5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKGNvbmplY3R1cmVOb2RlLCBmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCBjb25qZWN0dXJlVmVyaWZpZWQgPSB2ZXJpZnlDb25qZWN0dXJlKGNvbmplY3R1cmVOb2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIGNvbmplY3R1cmVWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogbWV0YXRoZW9yZW1Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChtZXRhdGhlb3JlbU5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IG1ldGF0aGVvcmVtVmVyaWZpZWQgPSB2ZXJpZnlNZXRhdGhlb3JlbShtZXRhdGhlb3JlbU5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gbWV0YXRoZW9yZW1WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogdHlwZURlY2xhcmF0aW9uTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAodHlwZURlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgdHlwZURlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlUeXBlRGVjbGFyYXRpb24odHlwZURlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiB0eXBlRGVjbGFyYXRpb25WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogdmFyaWFibGVEZWNsYXJhdGlvbk5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCB2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlWYXJpYWJsZURlY2xhcmF0aW9uKHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlRGVjbGFyYXRpb25WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAoY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgY29tYmluYXRvckRlY2xhcmF0aW9uID0gQ29tYmluYXRvckRlY2xhcmF0aW9uLmZyb21Db21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlKGNvbWJpbmF0b3JEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KSxcbiAgICAgICAgICAgICAgY29tYmluYXRvckRlY2xhcmF0aW9uVmVyaWZpZWQgPSBjb21iaW5hdG9yRGVjbGFyYXRpb24udmVyaWZ5KGZpbGVDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gY29tYmluYXRvckRlY2xhcmF0aW9uVmVyaWZpZWQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgY29uc3RydWN0b3JEZWNsYXJhdGlvblZlcmlmaWVkID0gdmVyaWZ5Q29uc3RydWN0b3JEZWNsYXJhdGlvbihjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVmVyaWZpZWQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAobWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVEZWNsYXJhdGlvbiA9IE1ldGF2YXJpYWJsZURlY2xhcmF0aW9uLmZyb21NZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUobWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCksXG4gICAgICAgICAgICAgIG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQgPSBtZXRhdmFyaWFibGVEZWNsYXJhdGlvbi52ZXJpZnkoZmlsZUNvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiBtZXRhdmFyaWFibGVEZWNsYXJhdGlvblZlcmlmaWVkO1xuICAgICAgfVxuICAgIH1cbiAgXTtcbn1cblxuY29uc3QgdG9wTGV2ZWxWZXJpZmllciA9IG5ldyBUb3BMZXZlbFZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRvcExldmVsVmVyaWZpZXI7XG4iXSwibmFtZXMiOlsiZXJyb3JOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJydWxlTm9kZVF1ZXJ5IiwiYXhpb21Ob2RlUXVlcnkiLCJsZW1tYU5vZGVRdWVyeSIsInRoZW9yZW1Ob2RlUXVlcnkiLCJtZXRhTGVtbWFOb2RlUXVlcnkiLCJjb25qZWN0dXJlTm9kZVF1ZXJ5IiwibWV0YXRoZW9yZW1Ob2RlUXVlcnkiLCJ0eXBlRGVjbGFyYXRpb25Ob2RlUXVlcnkiLCJ2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5IiwiY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZVF1ZXJ5IiwiY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5IiwiVG9wTGV2ZWxWZXJpZmllciIsInZlcmlmeSIsIm5vZGUiLCJmaWxlQ29udGV4dCIsInZlcmlmaWVkIiwibm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJWZXJpZmllciIsIm1hcHMiLCJlcnJvck5vZGUiLCJlcnJvclZlcmlmaWVkIiwidmVyaWZ5RXJyb3IiLCJydWxlTm9kZSIsInJ1bGUiLCJSdWxlIiwiZnJvbVJ1bGVOb2RlIiwicnVsZVZlcmlmaWVkIiwiYXhpb21Ob2RlIiwiYXhpb21WZXJpZmllZCIsInZlcmlmeUF4aW9tIiwibGVtbWFOb2RlIiwibGVtbWFWZXJpZmllZCIsInZlcmlmeUxlbW1hIiwidGhlb3JlbU5vZGUiLCJ0aGVvcmVtVmVyaWZpZWQiLCJ2ZXJpZnlUaGVvcmVtIiwibWV0YUxlbW1hTm9kZSIsIm1ldGFMZW1tYVZlcmlmaWVkIiwidmVyaWZ5TWV0YUxlbW1hIiwiY29uamVjdHVyZU5vZGUiLCJjb25qZWN0dXJlVmVyaWZpZWQiLCJ2ZXJpZnlDb25qZWN0dXJlIiwibWV0YXRoZW9yZW1Ob2RlIiwibWV0YXRoZW9yZW1WZXJpZmllZCIsInZlcmlmeU1ldGF0aGVvcmVtIiwidHlwZURlY2xhcmF0aW9uTm9kZSIsInR5cGVEZWNsYXJhdGlvblZlcmlmaWVkIiwidmVyaWZ5VHlwZURlY2xhcmF0aW9uIiwidmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJ2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQiLCJ2ZXJpZnlWYXJpYWJsZURlY2xhcmF0aW9uIiwiY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZSIsImNvbWJpbmF0b3JEZWNsYXJhdGlvbiIsIkNvbWJpbmF0b3JEZWNsYXJhdGlvbiIsImZyb21Db21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlIiwiY29tYmluYXRvckRlY2xhcmF0aW9uVmVyaWZpZWQiLCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSIsImNvbnN0cnVjdG9yRGVjbGFyYXRpb25WZXJpZmllZCIsInZlcmlmeUNvbnN0cnVjdG9yRGVjbGFyYXRpb24iLCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvbiIsIk1ldGF2YXJpYWJsZURlY2xhcmF0aW9uIiwiZnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSIsIm1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQiLCJ0b3BMZXZlbFZlcmlmaWVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkErSkE7OztlQUFBOzs7MkRBN0ppQjtpRUFDaUI7bUVBQ0U7K0RBRWY7NERBQ0c7NERBQ0E7NERBQ0E7OERBQ0U7Z0VBQ0U7aUVBQ0M7a0VBQ0M7MkRBQ0k7K0RBQ0k7a0VBQ0c7cUJBRWY7Ozs7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
|
|
233
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci90b3BMZXZlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFJ1bGUgZnJvbSBcIi4uL3J1bGVcIjtcbmltcG9ydCBFcnJvciBmcm9tIFwiLi4vZXJyb3JcIjtcbmltcG9ydCBUeXBlRGVjbGFyYXRpb24gZnJvbSBcIi4uL2RlY2xhcmF0aW9uL3R5cGVcIjtcbmltcG9ydCBDb21iaW5hdG9yRGVjbGFyYXRpb24gZnJvbSBcIi4uL2RlY2xhcmF0aW9uL2NvbWJpbmF0b3JcIjtcbmltcG9ydCBDb25zdHJ1Y3RvckRlY2xhcmF0aW9uIGZyb20gXCIuLi9kZWNsYXJhdGlvbi9jb25zdHJ1Y3RvclwiO1xuaW1wb3J0IE1ldGF2YXJpYWJsZURlY2xhcmF0aW9uIGZyb20gXCIuLi9kZWNsYXJhdGlvbi9tZXRhdmFyaWFibGVcIjtcblxuaW1wb3J0IFZlcmlmaWVyIGZyb20gXCIuLi92ZXJpZmllclwiO1xuaW1wb3J0IHZlcmlmeUF4aW9tIGZyb20gXCIuLi92ZXJpZnkvYXhpb21cIjtcbmltcG9ydCB2ZXJpZnlMZW1tYSBmcm9tIFwiLi4vdmVyaWZ5L2xlbW1hXCI7XG5pbXBvcnQgdmVyaWZ5VGhlb3JlbSBmcm9tIFwiLi4vdmVyaWZ5L3RoZW9yZW1cIjtcbmltcG9ydCB2ZXJpZnlNZXRhTGVtbWEgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhTGVtbWFcIjtcbmltcG9ydCB2ZXJpZnlDb25qZWN0dXJlIGZyb20gXCIuLi92ZXJpZnkvY29uamVjdHVyZVwiO1xuaW1wb3J0IHZlcmlmeU1ldGF0aGVvcmVtIGZyb20gXCIuLi92ZXJpZnkvbWV0YXRoZW9yZW1cIjtcbmltcG9ydCB2ZXJpZnlWYXJpYWJsZURlY2xhcmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvZGVjbGFyYXRpb24vdmFyaWFibGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBlcnJvck5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9lcnJvclwiKSxcbiAgICAgIHJ1bGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcnVsZVwiKSxcbiAgICAgIGF4aW9tTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2F4aW9tXCIpLFxuICAgICAgbGVtbWFOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbGVtbWFcIiksXG4gICAgICB0aGVvcmVtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3RoZW9yZW1cIiksXG4gICAgICBtZXRhTGVtbWFOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YUxlbW1hXCIpLFxuICAgICAgY29uamVjdHVyZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb25qZWN0dXJlXCIpLFxuICAgICAgbWV0YXRoZW9yZW1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXRoZW9yZW1cIiksXG4gICAgICB0eXBlRGVjbGFyYXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdHlwZURlY2xhcmF0aW9uXCIpLFxuICAgICAgdmFyaWFibGVEZWNsYXJhdGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi92YXJpYWJsZURlY2xhcmF0aW9uXCIpLFxuICAgICAgY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbWJpbmF0b3JEZWNsYXJhdGlvblwiKSxcbiAgICAgIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29uc3RydWN0b3JEZWNsYXJhdGlvblwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGF2YXJpYWJsZURlY2xhcmF0aW9uXCIpO1xuXG5jbGFzcyBUb3BMZXZlbFZlcmlmaWVyIGV4dGVuZHMgVmVyaWZpZXIge1xuICB2ZXJpZnkobm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgICBsZXQgdmVyaWZpZWQ7XG5cbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgdmVyaWZpZWQgPSBub25UZXJtaW5hbE5vZGVWZXJpZmllZDsgIC8vL1xuXG4gICAgcmV0dXJuIHZlcmlmaWVkO1xuICB9XG5cbiAgc3RhdGljIG1hcHMgPSBbXG4gICAge1xuICAgICAgbm9kZVF1ZXJ5OiBlcnJvck5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKGVycm9yTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgZXJyb3IgPSBFcnJvci5mcm9tRXJyb3JOb2RlKGVycm9yTm9kZSwgZmlsZUNvbnRleHQpLFxuICAgICAgICAgICAgICBlcnJvclZlcmlmaWVkID0gZXJyb3IudmVyaWZ5KCk7XG5cbiAgICAgICAgcmV0dXJuIGVycm9yVmVyaWZpZWQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IHJ1bGVOb2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChydWxlTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgcnVsZSA9IFJ1bGUuZnJvbVJ1bGVOb2RlKHJ1bGVOb2RlLCBmaWxlQ29udGV4dCksXG4gICAgICAgICAgICAgIHJ1bGVWZXJpZmllZCA9IHJ1bGUudmVyaWZ5KCk7XG5cbiAgICAgICAgcmV0dXJuIHJ1bGVWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogYXhpb21Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChheGlvbU5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IGF4aW9tVmVyaWZpZWQgPSB2ZXJpZnlBeGlvbShheGlvbU5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gYXhpb21WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogbGVtbWFOb2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChsZW1tYU5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IGxlbW1hVmVyaWZpZWQgPSB2ZXJpZnlMZW1tYShsZW1tYU5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gbGVtbWFWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogdGhlb3JlbU5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKHRoZW9yZW1Ob2RlLCBmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCB0aGVvcmVtVmVyaWZpZWQgPSB2ZXJpZnlUaGVvcmVtKHRoZW9yZW1Ob2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIHRoZW9yZW1WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogbWV0YUxlbW1hTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAobWV0YUxlbW1hTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgbWV0YUxlbW1hVmVyaWZpZWQgPSB2ZXJpZnlNZXRhTGVtbWEobWV0YUxlbW1hTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiBtZXRhTGVtbWFWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogY29uamVjdHVyZU5vZGVRdWVyeSxcbiAgICAgIHZlcmlmeTogKGNvbmplY3R1cmVOb2RlLCBmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCBjb25qZWN0dXJlVmVyaWZpZWQgPSB2ZXJpZnlDb25qZWN0dXJlKGNvbmplY3R1cmVOb2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICAgICAgcmV0dXJuIGNvbmplY3R1cmVWZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogbWV0YXRoZW9yZW1Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChtZXRhdGhlb3JlbU5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IG1ldGF0aGVvcmVtVmVyaWZpZWQgPSB2ZXJpZnlNZXRhdGhlb3JlbShtZXRhdGhlb3JlbU5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gbWV0YXRoZW9yZW1WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogdHlwZURlY2xhcmF0aW9uTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAodHlwZURlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgdHlwZURlY2xhcmF0aW9uID0gVHlwZURlY2xhcmF0aW9uLmZyb21UeXBlRGVjbGFyYXRpb25Ob2RlKHR5cGVEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KSxcbiAgICAgICAgICAgICAgdHlwZURlY2xhcmF0aW9uVmVyaWZpZWQgPSB0eXBlRGVjbGFyYXRpb24udmVyaWZ5KCk7XG5cbiAgICAgICAgcmV0dXJuIHR5cGVEZWNsYXJhdGlvblZlcmlmaWVkO1xuICAgICAgfVxuICAgIH0sXG4gICAge1xuICAgICAgbm9kZVF1ZXJ5OiB2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5LFxuICAgICAgdmVyaWZ5OiAodmFyaWFibGVEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IHZhcmlhYmxlRGVjbGFyYXRpb25WZXJpZmllZCA9IHZlcmlmeVZhcmlhYmxlRGVjbGFyYXRpb24odmFyaWFibGVEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gdmFyaWFibGVEZWNsYXJhdGlvblZlcmlmaWVkO1xuICAgICAgfVxuICAgIH0sXG4gICAge1xuICAgICAgbm9kZVF1ZXJ5OiBjb21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChjb21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCBjb21iaW5hdG9yRGVjbGFyYXRpb24gPSBDb21iaW5hdG9yRGVjbGFyYXRpb24uZnJvbUNvbWJpbmF0b3JEZWNsYXJhdGlvbk5vZGUoY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpLFxuICAgICAgICAgICAgICBjb21iaW5hdG9yRGVjbGFyYXRpb25WZXJpZmllZCA9IGNvbWJpbmF0b3JEZWNsYXJhdGlvbi52ZXJpZnkoKTtcblxuICAgICAgICByZXR1cm4gY29tYmluYXRvckRlY2xhcmF0aW9uVmVyaWZpZWQ7XG4gICAgICB9XG4gICAgfSxcbiAgICB7XG4gICAgICBub2RlUXVlcnk6IGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgY29uc3RydWN0b3JEZWNsYXJhdGlvbiA9IENvbnN0cnVjdG9yRGVjbGFyYXRpb24uZnJvbUNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlKGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCksXG4gICAgICAgICAgICAgIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25WZXJpZmllZCA9IGNvbnN0cnVjdG9yRGVjbGFyYXRpb24udmVyaWZ5KCk7XG5cbiAgICAgICAgcmV0dXJuIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25WZXJpZmllZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeTogbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlUXVlcnksXG4gICAgICB2ZXJpZnk6IChtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uID0gTWV0YXZhcmlhYmxlRGVjbGFyYXRpb24uZnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZShtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KSxcbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25WZXJpZmllZCA9IG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uLnZlcmlmeSgpO1xuXG4gICAgICAgIHJldHVybiBtZXRhdmFyaWFibGVEZWNsYXJhdGlvblZlcmlmaWVkO1xuICAgICAgfVxuICAgIH1cbiAgXTtcbn1cblxuY29uc3QgdG9wTGV2ZWxWZXJpZmllciA9IG5ldyBUb3BMZXZlbFZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHRvcExldmVsVmVyaWZpZXI7XG4iXSwibmFtZXMiOlsiZXJyb3JOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJydWxlTm9kZVF1ZXJ5IiwiYXhpb21Ob2RlUXVlcnkiLCJsZW1tYU5vZGVRdWVyeSIsInRoZW9yZW1Ob2RlUXVlcnkiLCJtZXRhTGVtbWFOb2RlUXVlcnkiLCJjb25qZWN0dXJlTm9kZVF1ZXJ5IiwibWV0YXRoZW9yZW1Ob2RlUXVlcnkiLCJ0eXBlRGVjbGFyYXRpb25Ob2RlUXVlcnkiLCJ2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5IiwiY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZVF1ZXJ5IiwiY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5IiwiVG9wTGV2ZWxWZXJpZmllciIsInZlcmlmeSIsIm5vZGUiLCJmaWxlQ29udGV4dCIsInZlcmlmaWVkIiwibm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJWZXJpZmllciIsIm1hcHMiLCJlcnJvck5vZGUiLCJlcnJvciIsIkVycm9yIiwiZnJvbUVycm9yTm9kZSIsImVycm9yVmVyaWZpZWQiLCJydWxlTm9kZSIsInJ1bGUiLCJSdWxlIiwiZnJvbVJ1bGVOb2RlIiwicnVsZVZlcmlmaWVkIiwiYXhpb21Ob2RlIiwiYXhpb21WZXJpZmllZCIsInZlcmlmeUF4aW9tIiwibGVtbWFOb2RlIiwibGVtbWFWZXJpZmllZCIsInZlcmlmeUxlbW1hIiwidGhlb3JlbU5vZGUiLCJ0aGVvcmVtVmVyaWZpZWQiLCJ2ZXJpZnlUaGVvcmVtIiwibWV0YUxlbW1hTm9kZSIsIm1ldGFMZW1tYVZlcmlmaWVkIiwidmVyaWZ5TWV0YUxlbW1hIiwiY29uamVjdHVyZU5vZGUiLCJjb25qZWN0dXJlVmVyaWZpZWQiLCJ2ZXJpZnlDb25qZWN0dXJlIiwibWV0YXRoZW9yZW1Ob2RlIiwibWV0YXRoZW9yZW1WZXJpZmllZCIsInZlcmlmeU1ldGF0aGVvcmVtIiwidHlwZURlY2xhcmF0aW9uTm9kZSIsInR5cGVEZWNsYXJhdGlvbiIsIlR5cGVEZWNsYXJhdGlvbiIsImZyb21UeXBlRGVjbGFyYXRpb25Ob2RlIiwidHlwZURlY2xhcmF0aW9uVmVyaWZpZWQiLCJ2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSIsInZhcmlhYmxlRGVjbGFyYXRpb25WZXJpZmllZCIsInZlcmlmeVZhcmlhYmxlRGVjbGFyYXRpb24iLCJjb21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlIiwiY29tYmluYXRvckRlY2xhcmF0aW9uIiwiQ29tYmluYXRvckRlY2xhcmF0aW9uIiwiZnJvbUNvbWJpbmF0b3JEZWNsYXJhdGlvbk5vZGUiLCJjb21iaW5hdG9yRGVjbGFyYXRpb25WZXJpZmllZCIsImNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlIiwiY29uc3RydWN0b3JEZWNsYXJhdGlvbiIsIkNvbnN0cnVjdG9yRGVjbGFyYXRpb24iLCJmcm9tQ29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUiLCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uVmVyaWZpZWQiLCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvbiIsIk1ldGF2YXJpYWJsZURlY2xhcmF0aW9uIiwiZnJvbU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSIsIm1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQiLCJ0b3BMZXZlbFZlcmlmaWVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFrS0E7OztlQUFBOzs7MkRBaEtpQjs0REFDQzsyREFDVTtpRUFDTTtrRUFDQzttRUFDQzsrREFFZjs0REFDRzs0REFDQTs4REFDRTtnRUFDRTtpRUFDQztrRUFDQzsrREFDUTtxQkFFWjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFMUIsSUFBTUEsaUJBQWlCQyxJQUFBQSxnQkFBUyxFQUFDLFdBQzNCQyxnQkFBZ0JELElBQUFBLGdCQUFTLEVBQUMsVUFDMUJFLGlCQUFpQkYsSUFBQUEsZ0JBQVMsRUFBQyxXQUMzQkcsaUJBQWlCSCxJQUFBQSxnQkFBUyxFQUFDLFdBQzNCSSxtQkFBbUJKLElBQUFBLGdCQUFTLEVBQUMsYUFDN0JLLHFCQUFxQkwsSUFBQUEsZ0JBQVMsRUFBQyxlQUMvQk0sc0JBQXNCTixJQUFBQSxnQkFBUyxFQUFDLGdCQUNoQ08sdUJBQXVCUCxJQUFBQSxnQkFBUyxFQUFDLGlCQUNqQ1EsMkJBQTJCUixJQUFBQSxnQkFBUyxFQUFDLHFCQUNyQ1MsK0JBQStCVCxJQUFBQSxnQkFBUyxFQUFDLHlCQUN6Q1UsaUNBQWlDVixJQUFBQSxnQkFBUyxFQUFDLDJCQUMzQ1csa0NBQWtDWCxJQUFBQSxnQkFBUyxFQUFDLDRCQUM1Q1ksbUNBQW1DWixJQUFBQSxnQkFBUyxFQUFDO0FBRW5ELElBQUEsQUFBTWEsaUNBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO2lDQUFBQTs7a0JBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsT0FBT0MsSUFBSSxFQUFFQyxXQUFXO2dCQUN0QixJQUFJQztnQkFFSixJQUFN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
|
package/package.json
CHANGED
package/src/combinator.js
CHANGED
|
@@ -26,9 +26,19 @@ export default class Combinator {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
verify(fileContext) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
let verified;
|
|
30
|
+
|
|
31
|
+
const combinatorString = this.string; ///
|
|
32
|
+
|
|
33
|
+
fileContext.trace(`Verifying the '${combinatorString}' combinator...`);
|
|
34
|
+
|
|
35
|
+
const statementVerifiedAsCombinator = this.statement.verifyAsCombinator(fileContext);
|
|
36
|
+
|
|
37
|
+
verified = statementVerifiedAsCombinator; ///
|
|
38
|
+
|
|
39
|
+
if (verified) {
|
|
40
|
+
fileContext.debug(`...verified the '${combinatorString}' combinator.`);
|
|
41
|
+
}
|
|
32
42
|
|
|
33
43
|
return verified;
|
|
34
44
|
}
|
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import shim from "../shim";
|
|
3
4
|
import Constructor from "../constructor";
|
|
4
5
|
import bracketedConstructorTermNode from "../node/term/constructor/bracketed";
|
|
5
|
-
import bracketedConstructorDeclarationTokens from "../tokens/constructorTerm/bracketed";
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import { bracketedConstructorTermString } from "../node/term/constructor/bracketed";
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
const localContext = {
|
|
10
|
+
nodeAsString: (node) => {
|
|
11
|
+
const string = bracketedConstructorTermString; ///
|
|
12
|
+
|
|
13
|
+
return string;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default class BracketedConstructor extends Constructor {
|
|
10
18
|
static fromNothing() {
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
bracketedConstructor = new BracketedConstructor(termNode, string);
|
|
19
|
+
const { Term } = shim,
|
|
20
|
+
termNode = bracketedConstructorTermNode, ///
|
|
21
|
+
term = Term.fromTermNode(termNode, localContext),
|
|
22
|
+
bracketedConstructor = new BracketedConstructor(term);
|
|
16
23
|
|
|
17
24
|
return bracketedConstructor;
|
|
18
25
|
}
|
|
19
26
|
}
|
|
20
|
-
|
|
21
|
-
const bracketedConstructor = BracketedConstructor.fromNothing();
|
|
22
|
-
|
|
23
|
-
export default bracketedConstructor;
|
package/src/constructor.js
CHANGED
|
@@ -1,44 +1,100 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import Type from "./type";
|
|
4
|
+
import Term from "./term";
|
|
5
|
+
|
|
6
|
+
import { nodeQuery } from "./utilities/query";
|
|
7
|
+
|
|
8
|
+
const termNodeQuery = nodeQuery("/constructorDeclaration/term"),
|
|
9
|
+
typeNodeQuery = nodeQuery("/constructorDeclaration/type");
|
|
4
10
|
|
|
5
11
|
export default class Constructor {
|
|
6
|
-
constructor(
|
|
7
|
-
this.termNode = termNode;
|
|
12
|
+
constructor(string, term) {
|
|
8
13
|
this.string = string;
|
|
9
|
-
this.
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
getTermNode() {
|
|
13
|
-
return this.termNode;
|
|
14
|
+
this.term = term;
|
|
14
15
|
}
|
|
15
16
|
|
|
16
17
|
getString() {
|
|
17
18
|
return this.string;
|
|
18
19
|
}
|
|
19
20
|
|
|
20
|
-
|
|
21
|
-
return this.
|
|
21
|
+
getTerm() {
|
|
22
|
+
return this.term;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
getType() { return this.term.getType(); }
|
|
26
|
+
|
|
27
|
+
verify(fileContext) {
|
|
28
|
+
let verified;
|
|
29
|
+
|
|
30
|
+
const constructorString = this.string; ///
|
|
31
|
+
|
|
32
|
+
fileContext.trace(`Verifying the '${constructorString}' constructor...`);
|
|
33
|
+
|
|
34
|
+
const termTypeVerified = this.term.verifyType(fileContext);
|
|
35
|
+
|
|
36
|
+
if (termTypeVerified) {
|
|
37
|
+
const termVerifiedAsConstructor = this.term.verifyAsConstructor(fileContext);
|
|
38
|
+
|
|
39
|
+
if (termVerifiedAsConstructor) {
|
|
40
|
+
verified = true; ///
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
if (verified) {
|
|
45
|
+
fileContext.debug(`...verified the '${constructorString}' constructor.`);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
return verified;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
toJSON() {
|
|
52
|
+
const termJSON = this.term.toJSON(),
|
|
53
|
+
term = termJSON, ///
|
|
54
|
+
json = {
|
|
55
|
+
term
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
return json;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
static fromJSON(json, fileContext) {
|
|
62
|
+
let { term } = json;
|
|
63
|
+
|
|
64
|
+
const termJSON = term; ///
|
|
65
|
+
|
|
66
|
+
json = termJSON; ///
|
|
67
|
+
|
|
68
|
+
term = Term.fromJSON(json, fileContext);
|
|
69
|
+
|
|
70
|
+
const type = term.getType(),
|
|
71
|
+
string = stringFromTermAndType(term, type),
|
|
72
|
+
constructor = new Constructor(string, term);
|
|
73
|
+
|
|
74
|
+
return constructor;
|
|
22
75
|
}
|
|
23
76
|
|
|
24
|
-
static
|
|
25
|
-
const
|
|
26
|
-
|
|
77
|
+
static fromConstructorDeclarationNode(constructorDeclarationNode, fileContext) {
|
|
78
|
+
const termNode = termNodeQuery(constructorDeclarationNode),
|
|
79
|
+
typeNode = typeNodeQuery(constructorDeclarationNode),
|
|
80
|
+
type = Type.fromTypeNode(typeNode),
|
|
81
|
+
term = Term.fromTermNodeAndType(termNode, type, fileContext),
|
|
82
|
+
string = stringFromTermAndType(term, type),
|
|
83
|
+
constructor = new Constructor(string, term);
|
|
27
84
|
|
|
28
85
|
return constructor;
|
|
29
86
|
}
|
|
30
87
|
}
|
|
31
88
|
|
|
32
|
-
function
|
|
89
|
+
function stringFromTermAndType(term, type) {
|
|
33
90
|
let string;
|
|
34
91
|
|
|
35
|
-
const termString =
|
|
92
|
+
const termString = term.getString();
|
|
36
93
|
|
|
37
94
|
if (type === null) {
|
|
38
95
|
string = `${termString}`;
|
|
39
96
|
} else {
|
|
40
|
-
const
|
|
41
|
-
typeString = type.asString(tokens, noSuperType);
|
|
97
|
+
const typeString = type.getString();
|
|
42
98
|
|
|
43
99
|
string = `${termString}:${typeString}`;
|
|
44
100
|
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import Constructor from "../constructor";
|
|
4
|
+
|
|
5
|
+
export default class ConstructorDeclaration {
|
|
6
|
+
constructor(fileContext, constructor) {
|
|
7
|
+
this.fileContext = fileContext;
|
|
8
|
+
this.constructor = constructor;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
getFileContext() {
|
|
12
|
+
return this.fileContext;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
getConstructor() {
|
|
16
|
+
return this.constructor;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
getString() { return this.constructor.getString(); }
|
|
20
|
+
|
|
21
|
+
verify() {
|
|
22
|
+
let verified;
|
|
23
|
+
|
|
24
|
+
const constructorDeclarationString = this.getString(); ///
|
|
25
|
+
|
|
26
|
+
this.fileContext.trace(`Verifying the '${constructorDeclarationString}' constructor declaration...`);
|
|
27
|
+
|
|
28
|
+
const constructorVerified = this.constructor.verify(this.fileContext);
|
|
29
|
+
|
|
30
|
+
if (constructorVerified) {
|
|
31
|
+
this.fileContext.addConstructor(this.constructor);
|
|
32
|
+
|
|
33
|
+
verified = true;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
if (verified) {
|
|
37
|
+
this.fileContext.debug(`...verified the '${constructorDeclarationString}' constructor declaration.`);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return verified;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
static fromConstructorDeclarationNode(constructorDeclarationNode, fileContext) {
|
|
44
|
+
const constructor = Constructor.fromConstructorDeclarationNode(constructorDeclarationNode, fileContext),
|
|
45
|
+
constructorDeclaration = new ConstructorDeclaration(fileContext, constructor);
|
|
46
|
+
|
|
47
|
+
return constructorDeclaration;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -8,11 +8,16 @@ import { nodeQuery } from "../utilities/query";
|
|
|
8
8
|
const metaTypeNodeQuery = nodeQuery("/metavariableDeclaration/metaType");
|
|
9
9
|
|
|
10
10
|
export default class MetavariableDeclaration {
|
|
11
|
-
constructor(string, metavariable) {
|
|
11
|
+
constructor(fileContext, string, metavariable) {
|
|
12
|
+
this.fileContext = fileContext;
|
|
12
13
|
this.string = string;
|
|
13
14
|
this.metavariable = metavariable;
|
|
14
15
|
}
|
|
15
16
|
|
|
17
|
+
getFileContext() {
|
|
18
|
+
return this.fileContext;
|
|
19
|
+
}
|
|
20
|
+
|
|
16
21
|
getString() {
|
|
17
22
|
return this.string;
|
|
18
23
|
}
|
|
@@ -21,23 +26,23 @@ export default class MetavariableDeclaration {
|
|
|
21
26
|
return this.metavariable;
|
|
22
27
|
}
|
|
23
28
|
|
|
24
|
-
verify(
|
|
29
|
+
verify() {
|
|
25
30
|
let verified;
|
|
26
31
|
|
|
27
32
|
const metavariableDeclarationString = this.string; ///
|
|
28
33
|
|
|
29
|
-
fileContext.trace(`Verifying the '${metavariableDeclarationString}' metavariable declaration...`);
|
|
34
|
+
this.fileContext.trace(`Verifying the '${metavariableDeclarationString}' metavariable declaration...`);
|
|
30
35
|
|
|
31
|
-
const metavariableVerified = this.metavariable.verify(fileContext);
|
|
36
|
+
const metavariableVerified = this.metavariable.verify(this.fileContext);
|
|
32
37
|
|
|
33
38
|
if (metavariableVerified) {
|
|
34
|
-
fileContext.addMetavariable(this.metavariable);
|
|
39
|
+
this.fileContext.addMetavariable(this.metavariable);
|
|
35
40
|
|
|
36
41
|
verified = true;
|
|
37
42
|
}
|
|
38
43
|
|
|
39
44
|
if (verified) {
|
|
40
|
-
fileContext.debug(`...verified the '${metavariableDeclarationString}' metavariable declaration.`);
|
|
45
|
+
this.fileContext.debug(`...verified the '${metavariableDeclarationString}' metavariable declaration.`);
|
|
41
46
|
}
|
|
42
47
|
|
|
43
48
|
return verified;
|
|
@@ -50,7 +55,7 @@ export default class MetavariableDeclaration {
|
|
|
50
55
|
metavariableString = metavariable.getString(),
|
|
51
56
|
metaTypeString = metaType.getString(),
|
|
52
57
|
string = `${metavariableString}:${metaTypeString}`,
|
|
53
|
-
metavariableDeclaration = new MetavariableDeclaration(string, metavariable);
|
|
58
|
+
metavariableDeclaration = new MetavariableDeclaration(fileContext, string, metavariable);
|
|
54
59
|
|
|
55
60
|
return metavariableDeclaration;
|
|
56
61
|
}
|