occam-verify-cli 0.0.941 → 0.0.943
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/conclusion.js +3 -4
- package/lib/consequent.js +3 -4
- package/lib/constants.js +5 -1
- package/lib/context/file.js +1 -1
- package/lib/context/local.js +15 -5
- package/lib/frame.js +2 -2
- package/lib/metavariable.js +12 -4
- package/lib/premise.js +11 -12
- package/lib/proofStep.js +14 -18
- package/lib/rule.js +6 -32
- package/lib/substitution/statementForMetavariable.js +15 -1
- package/lib/substitution/termForVariable.js +17 -3
- package/lib/substitutions.js +208 -0
- package/lib/supposition.js +11 -12
- package/lib/topLevelAssertion.js +9 -41
- package/lib/unifier/equality.js +6 -8
- package/lib/unifier/metaLevel.js +7 -10
- package/lib/unifier/statementAgainstCombinator.js +6 -9
- package/lib/unifier/termAgainstConstructor.js +5 -5
- package/lib/unifier.js +34 -13
- package/lib/unify/conclusionAgainstStatement.js +34 -0
- package/lib/unify/consequentAgainstStatement.js +34 -0
- package/lib/unify/metavariableAgainstStatement.js +24 -16
- package/lib/unify/premiseAgainstProofStep.js +41 -0
- package/lib/unify/premisesAgainstProofSteps.js +31 -0
- package/lib/unify/statementAgainstMetaType.js +5 -9
- package/lib/unify/suppositionAgainstProofStep.js +41 -0
- package/lib/unify/suppositionsAgainstProofSteps.js +31 -0
- package/lib/unify/termAgainstTerm.js +4 -5
- package/lib/unify/termAgainstType.js +7 -7
- package/lib/unify/variableAgainstTerm.js +12 -28
- package/lib/utilities/arguments.js +27 -0
- package/lib/utilities/array.js +17 -2
- package/lib/utilities/unify.js +19 -0
- package/lib/verifier/metaLevel.js +8 -11
- package/lib/verifier/statementAsCombinator.js +13 -22
- package/lib/verifier/topLevel.js +3 -6
- package/lib/verifier.js +28 -8
- package/lib/verify/assertion/type.js +3 -7
- package/lib/verify/axiom.js +3 -2
- package/lib/verify/conjecture.js +5 -3
- package/lib/verify/declaration/metavariable.js +1 -1
- package/lib/verify/equality.js +3 -7
- package/lib/verify/lemma.js +4 -3
- package/lib/verify/metaLemma.js +3 -2
- package/lib/verify/metatheorem.js +3 -2
- package/lib/verify/metavariable.js +26 -63
- package/lib/verify/rule.js +3 -2
- package/lib/verify/statement/qualified.js +54 -54
- package/lib/verify/statement/unqualified.js +2 -2
- package/lib/verify/statement.js +35 -30
- package/lib/verify/term.js +26 -32
- package/lib/verify/theorem.js +4 -3
- package/lib/verify/variable.js +3 -4
- package/package.json +4 -4
- package/src/conclusion.js +2 -6
- package/src/consequent.js +2 -6
- package/src/constants.js +1 -0
- package/src/context/file.js +5 -5
- package/src/context/local.js +20 -9
- package/src/frame.js +1 -1
- package/src/metavariable.js +1 -1
- package/src/premise.js +18 -24
- package/src/proofStep.js +16 -20
- package/src/rule.js +12 -50
- package/src/substitution/statementForMetavariable.js +16 -0
- package/src/substitution/termForVariable.js +18 -2
- package/src/substitutions.js +143 -0
- package/src/supposition.js +18 -24
- package/src/topLevelAssertion.js +15 -62
- package/src/unifier/equality.js +7 -8
- package/src/unifier/metaLevel.js +6 -10
- package/src/unifier/statementAgainstCombinator.js +9 -9
- package/src/unifier/termAgainstConstructor.js +6 -4
- package/src/unifier.js +35 -11
- package/src/unify/conclusionAgainstStatement.js +34 -0
- package/src/unify/consequentAgainstStatement.js +34 -0
- package/src/unify/metavariableAgainstStatement.js +33 -23
- package/src/unify/premiseAgainstProofStep.js +54 -0
- package/src/unify/premisesAgainstProofSteps.js +23 -0
- package/src/unify/statementAgainstMetaType.js +3 -11
- package/src/unify/suppositionAgainstProofStep.js +54 -0
- package/src/unify/suppositionsAgainstProofSteps.js +23 -0
- package/src/unify/termAgainstTerm.js +3 -7
- package/src/unify/termAgainstType.js +5 -6
- package/src/unify/variableAgainstTerm.js +18 -48
- package/src/utilities/arguments.js +18 -0
- package/src/utilities/array.js +16 -1
- package/src/utilities/unify.js +18 -0
- package/src/verifier/metaLevel.js +7 -11
- package/src/verifier/statementAsCombinator.js +15 -28
- package/src/verifier/topLevel.js +13 -17
- package/src/verifier.js +28 -6
- package/src/verify/assertion/type.js +2 -6
- package/src/verify/axiom.js +2 -1
- package/src/verify/conjecture.js +5 -2
- package/src/verify/declaration/metavariable.js +9 -9
- package/src/verify/equality.js +2 -6
- package/src/verify/lemma.js +3 -2
- package/src/verify/metaLemma.js +2 -1
- package/src/verify/metatheorem.js +2 -1
- package/src/verify/metavariable.js +31 -91
- package/src/verify/rule.js +2 -1
- package/src/verify/statement/qualified.js +53 -53
- package/src/verify/statement/unqualified.js +1 -1
- package/src/verify/statement.js +37 -31
- package/src/verify/term.js +25 -31
- package/src/verify/theorem.js +3 -2
- package/src/verify/variable.js +2 -4
|
@@ -115,10 +115,7 @@ var StatementAgainstCombinatorUnifier = /*#__PURE__*/ function(Unifier) {
|
|
|
115
115
|
key: "unify",
|
|
116
116
|
value: function unify(statementNode, combinatorStatementNode, localContext) {
|
|
117
117
|
var statementUnifiedAgainstCombinator;
|
|
118
|
-
var nonTerminalNodeA = statementNode, nonTerminalNodeB = combinatorStatementNode, nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext
|
|
119
|
-
var unifiedAhead = true;
|
|
120
|
-
return unifiedAhead;
|
|
121
|
-
});
|
|
118
|
+
var nonTerminalNodeA = statementNode, nonTerminalNodeB = combinatorStatementNode, nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext);
|
|
122
119
|
statementUnifiedAgainstCombinator = nonTerminalNodeUnified; ///
|
|
123
120
|
return statementUnifiedAgainstCombinator;
|
|
124
121
|
}
|
|
@@ -130,16 +127,16 @@ _define_property(StatementAgainstCombinatorUnifier, "maps", [
|
|
|
130
127
|
{
|
|
131
128
|
nodeQueryA: statementNodeQuery,
|
|
132
129
|
nodeQueryB: metaTypeNodeQuery,
|
|
133
|
-
unify: function(statementNodeA, metaTypeNodeB, localContext
|
|
134
|
-
var statementUnifiedAgainstMetaType = (0, _statementAgainstMetaType.default)(
|
|
130
|
+
unify: function(statementNodeA, metaTypeNodeB, localContext) {
|
|
131
|
+
var metaTypeNode = metaTypeNodeB, statementNode = statementNodeA, statementUnifiedAgainstMetaType = (0, _statementAgainstMetaType.default)(statementNode, metaTypeNode, localContext);
|
|
135
132
|
return statementUnifiedAgainstMetaType;
|
|
136
133
|
}
|
|
137
134
|
},
|
|
138
135
|
{
|
|
139
136
|
nodeQueryA: termNodeQuery,
|
|
140
137
|
nodeQueryB: typeNodeQuery,
|
|
141
|
-
unify: function(termNodeA, typeNodeB, localContext
|
|
142
|
-
var termUnifiedAgainstType = (0, _termAgainstType.default)(
|
|
138
|
+
unify: function(termNodeA, typeNodeB, localContext) {
|
|
139
|
+
var termNode = termNodeA, typeNode = typeNodeB, termUnifiedAgainstType = (0, _termAgainstType.default)(termNode, typeNode, localContext);
|
|
143
140
|
return termUnifiedAgainstType;
|
|
144
141
|
}
|
|
145
142
|
}
|
|
@@ -147,4 +144,4 @@ _define_property(StatementAgainstCombinatorUnifier, "maps", [
|
|
|
147
144
|
var statementAgainstCombinatorUnifier = new StatementAgainstCombinatorUnifier();
|
|
148
145
|
var _default = statementAgainstCombinatorUnifier;
|
|
149
146
|
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmaWVyL3N0YXRlbWVudEFnYWluc3RDb21iaW5hdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgVW5pZmllciBmcm9tIFwiLi4vdW5pZmllclwiO1xuaW1wb3J0IHVuaWZ5VGVybUFnYWluc3RUeXBlIGZyb20gXCIuLi91bmlmeS90ZXJtQWdhaW5zdFR5cGVcIjtcbmltcG9ydCB1bmlmeVN0YXRlbWVudEFnYWluc3RNZXRhVHlwZSBmcm9tIFwiLi4vdW5pZnkvc3RhdGVtZW50QWdhaW5zdE1ldGFUeXBlXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtIVwiKSxcbiAgICAgIHR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdHlwZSFcIiksXG4gICAgICBtZXRhVHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhVHlwZSFcIiksXG4gICAgICBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50IVwiKTtcblxuY2xhc3MgU3RhdGVtZW50QWdhaW5zdENvbWJpbmF0b3JVbmlmaWVyIGV4dGVuZHMgVW5pZmllciB7XG4gIHVuaWZ5KHN0YXRlbWVudE5vZGUsIGNvbWJpbmF0b3JTdGF0ZW1lbnROb2RlLCBsb2NhbENvbnRleHQpIHtcbiAgICBsZXQgc3RhdGVtZW50VW5pZmllZEFnYWluc3RDb21iaW5hdG9yO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IHN0YXRlbWVudE5vZGUsIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUIgPSBjb21iaW5hdG9yU3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9IHRoaXMudW5pZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgbG9jYWxDb250ZXh0KTtcblxuICAgIHN0YXRlbWVudFVuaWZpZWRBZ2FpbnN0Q29tYmluYXRvciA9IG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7IC8vL1xuXG4gICAgcmV0dXJuIHN0YXRlbWVudFVuaWZpZWRBZ2FpbnN0Q29tYmluYXRvcjtcbiAgfTtcblxuICBzdGF0aWMgbWFwcyA9IFtcbiAgICB7XG4gICAgICBub2RlUXVlcnlBOiBzdGF0ZW1lbnROb2RlUXVlcnksXG4gICAgICBub2RlUXVlcnlCOiBtZXRhVHlwZU5vZGVRdWVyeSxcbiAgICAgIHVuaWZ5OiAoc3RhdGVtZW50Tm9kZUEsIG1ldGFUeXBlTm9kZUIsIGxvY2FsQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCBtZXRhVHlwZU5vZGUgPSBtZXRhVHlwZU5vZGVCLCAvLy9cbiAgICAgICAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgc3RhdGVtZW50VW5pZmllZEFnYWluc3RNZXRhVHlwZSA9IHVuaWZ5U3RhdGVtZW50QWdhaW5zdE1ldGFUeXBlKHN0YXRlbWVudE5vZGUsIG1ldGFUeXBlTm9kZSwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgICByZXR1cm4gc3RhdGVtZW50VW5pZmllZEFnYWluc3RNZXRhVHlwZTtcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIG5vZGVRdWVyeUE6IHRlcm1Ob2RlUXVlcnksXG4gICAgICBub2RlUXVlcnlCOiB0eXBlTm9kZVF1ZXJ5LFxuICAgICAgdW5pZnk6ICh0ZXJtTm9kZUEsIHR5cGVOb2RlQiwgbG9jYWxDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IHRlcm1Ob2RlID0gdGVybU5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgdHlwZU5vZGUgPSB0eXBlTm9kZUIsIC8vL1xuICAgICAgICAgICAgICB0ZXJtVW5pZmllZEFnYWluc3RUeXBlID0gdW5pZnlUZXJtQWdhaW5zdFR5cGUodGVybU5vZGUsIHR5cGVOb2RlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiB0ZXJtVW5pZmllZEFnYWluc3RUeXBlO1xuICAgICAgfVxuICAgIH1cbiAgXTtcbn1cblxuY29uc3Qgc3RhdGVtZW50QWdhaW5zdENvbWJpbmF0b3JVbmlmaWVyID0gbmV3IFN0YXRlbWVudEFnYWluc3RDb21iaW5hdG9yVW5pZmllcigpO1xuXG5leHBvcnQgZGVmYXVsdCBzdGF0ZW1lbnRBZ2FpbnN0Q29tYmluYXRvclVuaWZpZXI7XG4iXSwibmFtZXMiOlsidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVOb2RlUXVlcnkiLCJtZXRhVHlwZU5vZGVRdWVyeSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIlN0YXRlbWVudEFnYWluc3RDb21iaW5hdG9yVW5pZmllciIsInVuaWZ5Iiwic3RhdGVtZW50Tm9kZSIsImNvbWJpbmF0b3JTdGF0ZW1lbnROb2RlIiwibG9jYWxDb250ZXh0Iiwic3RhdGVtZW50VW5pZmllZEFnYWluc3RDb21iaW5hdG9yIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJub25UZXJtaW5hbE5vZGVVbmlmaWVkIiwidW5pZnlOb25UZXJtaW5hbE5vZGUiLCJVbmlmaWVyIiwibWFwcyIsIm5vZGVRdWVyeUEiLCJub2RlUXVlcnlCIiwic3RhdGVtZW50Tm9kZUEiLCJtZXRhVHlwZU5vZGVCIiwibWV0YVR5cGVOb2RlIiwic3RhdGVtZW50VW5pZmllZEFnYWluc3RNZXRhVHlwZSIsInVuaWZ5U3RhdGVtZW50QWdhaW5zdE1ldGFUeXBlIiwidGVybU5vZGVBIiwidHlwZU5vZGVCIiwidGVybU5vZGUiLCJ0eXBlTm9kZSIsInRlcm1VbmlmaWVkQWdhaW5zdFR5cGUiLCJ1bmlmeVRlcm1BZ2FpbnN0VHlwZSIsInN0YXRlbWVudEFnYWluc3RDb21iaW5hdG9yVW5pZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBc0RBOzs7ZUFBQTs7OzhEQXBEb0I7c0VBQ2E7K0VBQ1M7cUJBRWhCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUxQixJQUFNQSxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsV0FDMUJDLGdCQUFnQkQsSUFBQUEsZ0JBQVMsRUFBQyxXQUMxQkUsb0JBQW9CRixJQUFBQSxnQkFBUyxFQUFDLGVBQzlCRyxxQkFBcUJILElBQUFBLGdCQUFTLEVBQUM7QUFFckMsSUFBQSxBQUFNSSxrREFBRCxBQUFMO2NBQU1BO2FBQUFBO2dDQUFBQTtpQ0FBQUE7O2tCQUFBQTs7WUFDSkMsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1DLGFBQWEsRUFBRUMsdUJBQXVCLEVBQUVDLFlBQVk7Z0JBQ3hELElBQUlDO2dCQUVKLElBQU1DLG1CQUFtQkosZUFDbkJLLG1CQUFtQkoseUJBQ25CSyx5QkFBeUIsSUFBSSxDQUFDQyxvQkFBb0IsQ0FBQ0gsa0JBQWtCQyxrQkFBa0JIO2dCQUU3RkMsb0NBQW9DRyx3QkFBd0IsR0FBRztnQkFFL0QsT0FBT0g7WUFDVDs7O1dBWElMO0VBQTBDVSxnQkFBTztBQWFyRCxpQkFiSVYsbUNBYUdXLFFBQU87SUFDWjtRQUNFQyxZQUFZYjtRQUNaYyxZQUFZZjtRQUNaRyxPQUFPLFNBQUNhLGdCQUFnQkMsZUFBZVg7WUFDckMsSUFBTVksZUFBZUQsZUFDZmIsZ0JBQWdCWSxnQkFDaEJHLGtDQUFrQ0MsSUFBQUEsaUNBQTZCLEVBQUNoQixlQUFlYyxjQUFjWjtZQUVuRyxPQUFPYTtRQUNUO0lBQ0Y7SUFDQTtRQUNFTCxZQUFZakI7UUFDWmtCLFlBQVloQjtRQUNaSSxPQUFPLFNBQUNrQixXQUFXQyxXQUFXaEI7WUFDNUIsSUFBTWlCLFdBQVdGLFdBQ1hHLFdBQVdGLFdBQ1hHLHlCQUF5QkMsSUFBQUEsd0JBQW9CLEVBQUNILFVBQVVDLFVBQVVsQjtZQUV4RSxPQUFPbUI7UUFDVDtJQUNGO0NBQ0Q7QUFHSCxJQUFNRSxvQ0FBb0MsSUFBSXpCO0lBRTlDLFdBQWV5QiJ9
|
|
@@ -112,9 +112,9 @@ var TermAgainstConstructorUnifier = /*#__PURE__*/ function(Unifier) {
|
|
|
112
112
|
_create_class(TermAgainstConstructorUnifier, [
|
|
113
113
|
{
|
|
114
114
|
key: "unify",
|
|
115
|
-
value: function unify(termNode, constructorTermNode, localContext
|
|
115
|
+
value: function unify(termNode, constructorTermNode, localContext) {
|
|
116
116
|
var termUnifiedAgainstConstructor;
|
|
117
|
-
var nonTerminalNodeA = termNode, nonTerminalNodeB = constructorTermNode, nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext
|
|
117
|
+
var nonTerminalNodeA = termNode, nonTerminalNodeB = constructorTermNode, nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext);
|
|
118
118
|
termUnifiedAgainstConstructor = nonTerminalNodeUnified; ///
|
|
119
119
|
return termUnifiedAgainstConstructor;
|
|
120
120
|
}
|
|
@@ -126,8 +126,8 @@ _define_property(TermAgainstConstructorUnifier, "maps", [
|
|
|
126
126
|
{
|
|
127
127
|
nodeQueryA: termNodeQuery,
|
|
128
128
|
nodeQueryB: typeNodeQuery,
|
|
129
|
-
unify: function(termNodeA, typeNodeB, localContext
|
|
130
|
-
var termUnifiedAgainstType = (0, _termAgainstType.default)(
|
|
129
|
+
unify: function(termNodeA, typeNodeB, localContext) {
|
|
130
|
+
var termNode = termNodeA, typeNode = typeNodeB, termUnifiedAgainstType = (0, _termAgainstType.default)(termNode, typeNode, localContext);
|
|
131
131
|
return termUnifiedAgainstType;
|
|
132
132
|
}
|
|
133
133
|
}
|
|
@@ -135,4 +135,4 @@ _define_property(TermAgainstConstructorUnifier, "maps", [
|
|
|
135
135
|
var termAgainstConstructorUnifier = new TermAgainstConstructorUnifier();
|
|
136
136
|
var _default = termAgainstConstructorUnifier;
|
|
137
137
|
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmaWVyL3Rlcm1BZ2FpbnN0Q29uc3RydWN0b3IuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBVbmlmaWVyIGZyb20gXCIuLi91bmlmaWVyXCI7XG5pbXBvcnQgdW5pZnlUZXJtQWdhaW5zdFR5cGUgZnJvbSBcIi4uL3VuaWZ5L3Rlcm1BZ2FpbnN0VHlwZVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdGVybVwiKSxcbiAgICAgIHR5cGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdHlwZVwiKTtcblxuY2xhc3MgVGVybUFnYWluc3RDb25zdHJ1Y3RvclVuaWZpZXIgZXh0ZW5kcyBVbmlmaWVyIHtcbiAgdW5pZnkodGVybU5vZGUsIGNvbnN0cnVjdG9yVGVybU5vZGUsIGxvY2FsQ29udGV4dCkge1xuICAgIGxldCB0ZXJtVW5pZmllZEFnYWluc3RDb25zdHJ1Y3RvcjtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSB0ZXJtTm9kZSwgLy8vXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlQiA9IGNvbnN0cnVjdG9yVGVybU5vZGUsIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPSB0aGlzLnVuaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIGxvY2FsQ29udGV4dCk7XG5cbiAgICB0ZXJtVW5pZmllZEFnYWluc3RDb25zdHJ1Y3RvciA9IG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7IC8vL1xuXG4gICAgcmV0dXJuIHRlcm1VbmlmaWVkQWdhaW5zdENvbnN0cnVjdG9yO1xuICB9O1xuXG4gIHN0YXRpYyBtYXBzID0gW1xuICAgIHtcbiAgICAgIG5vZGVRdWVyeUE6IHRlcm1Ob2RlUXVlcnksXG4gICAgICBub2RlUXVlcnlCOiB0eXBlTm9kZVF1ZXJ5LFxuICAgICAgdW5pZnk6ICh0ZXJtTm9kZUEsIHR5cGVOb2RlQiwgbG9jYWxDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IHRlcm1Ob2RlID0gdGVybU5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgdHlwZU5vZGUgPSB0eXBlTm9kZUIsIC8vL1xuICAgICAgICAgICAgICB0ZXJtVW5pZmllZEFnYWluc3RUeXBlID0gdW5pZnlUZXJtQWdhaW5zdFR5cGUodGVybU5vZGUsIHR5cGVOb2RlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIHJldHVybiB0ZXJtVW5pZmllZEFnYWluc3RUeXBlO1xuICAgICAgfVxuICAgIH1cbiAgXTtcbn1cblxuY29uc3QgdGVybUFnYWluc3RDb25zdHJ1Y3RvclVuaWZpZXIgPSBuZXcgVGVybUFnYWluc3RDb25zdHJ1Y3RvclVuaWZpZXIoKTtcblxuZXhwb3J0IGRlZmF1bHQgdGVybUFnYWluc3RDb25zdHJ1Y3RvclVuaWZpZXI7XG4iXSwibmFtZXMiOlsidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVOb2RlUXVlcnkiLCJUZXJtQWdhaW5zdENvbnN0cnVjdG9yVW5pZmllciIsInVuaWZ5IiwidGVybU5vZGUiLCJjb25zdHJ1Y3RvclRlcm1Ob2RlIiwibG9jYWxDb250ZXh0IiwidGVybVVuaWZpZWRBZ2FpbnN0Q29uc3RydWN0b3IiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsIm5vblRlcm1pbmFsTm9kZVVuaWZpZWQiLCJ1bmlmeU5vblRlcm1pbmFsTm9kZSIsIlVuaWZpZXIiLCJtYXBzIiwibm9kZVF1ZXJ5QSIsIm5vZGVRdWVyeUIiLCJ0ZXJtTm9kZUEiLCJ0eXBlTm9kZUIiLCJ0eXBlTm9kZSIsInRlcm1VbmlmaWVkQWdhaW5zdFR5cGUiLCJ1bmlmeVRlcm1BZ2FpbnN0VHlwZSIsInRlcm1BZ2FpbnN0Q29uc3RydWN0b3JVbmlmaWVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF3Q0E7OztlQUFBOzs7OERBdENvQjtzRUFDYTtxQkFFUDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFMUIsSUFBTUEsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLFVBQzFCQyxnQkFBZ0JELElBQUFBLGdCQUFTLEVBQUM7QUFFaEMsSUFBQSxBQUFNRSw4Q0FBRCxBQUFMO2NBQU1BO2FBQUFBO2dDQUFBQTtpQ0FBQUE7O2tCQUFBQTs7WUFDSkMsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1DLFFBQVEsRUFBRUMsbUJBQW1CLEVBQUVDLFlBQVk7Z0JBQy9DLElBQUlDO2dCQUVKLElBQU1DLG1CQUFtQkosVUFDbkJLLG1CQUFtQkoscUJBQ25CSyx5QkFBeUIsSUFBSSxDQUFDQyxvQkFBb0IsQ0FBQ0gsa0JBQWtCQyxrQkFBa0JIO2dCQUU3RkMsZ0NBQWdDRyx3QkFBd0IsR0FBRztnQkFFM0QsT0FBT0g7WUFDVDs7O1dBWElMO0VBQXNDVSxnQkFBTztBQWFqRCxpQkFiSVYsK0JBYUdXLFFBQU87SUFDWjtRQUNFQyxZQUFZZjtRQUNaZ0IsWUFBWWQ7UUFDWkUsT0FBTyxTQUFDYSxXQUFXQyxXQUFXWDtZQUM1QixJQUFNRixXQUFXWSxXQUNYRSxXQUFXRCxXQUNYRSx5QkFBeUJDLElBQUFBLHdCQUFvQixFQUFDaEIsVUFBVWMsVUFBVVo7WUFFeEUsT0FBT2E7UUFDVDtJQUNGO0NBQ0Q7QUFHSCxJQUFNRSxnQ0FBZ0MsSUFBSW5CO0lBRTFDLFdBQWVtQiJ9
|
package/lib/unifier.js
CHANGED
|
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
var _query = require("./utilities/query");
|
|
12
12
|
var _unifier = require("./utilities/unifier");
|
|
13
|
+
var _arguments = require("./utilities/arguments");
|
|
13
14
|
function _array_like_to_array(arr, len) {
|
|
14
15
|
if (len == null || len > arr.length) len = arr.length;
|
|
15
16
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
@@ -104,6 +105,7 @@ var Unifier = /*#__PURE__*/ function() {
|
|
|
104
105
|
{
|
|
105
106
|
key: "unifyChildNodes",
|
|
106
107
|
value: function unifyChildNodes(childNodesA, childNodesB) {
|
|
108
|
+
var _this = this;
|
|
107
109
|
for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
|
|
108
110
|
remainingArguments[_key - 2] = arguments[_key];
|
|
109
111
|
}
|
|
@@ -112,12 +114,25 @@ var Unifier = /*#__PURE__*/ function() {
|
|
|
112
114
|
if (childNodesALength === childNodesBLength) {
|
|
113
115
|
var childTerminalNodeMapA = (0, _unifier.terminalNodeMapFromNodes)(childNodesA), childTerminalNodeMapB = (0, _unifier.terminalNodeMapFromNodes)(childNodesB), terminalNodeMapsEqual = (0, _unifier.areTerminalNodeMapsEqual)(childTerminalNodeMapA, childTerminalNodeMapB);
|
|
114
116
|
if (terminalNodeMapsEqual) {
|
|
115
|
-
var
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
117
|
+
var lastRemainingArgumentFunction = (0, _arguments.isLastRemainingArgumentFunction)(remainingArguments);
|
|
118
|
+
if (lastRemainingArgumentFunction) {
|
|
119
|
+
var index = 0, childNodesUnifiedAhead = this.unifyChildNodesAhead.apply(this, [
|
|
120
|
+
index,
|
|
121
|
+
childNodesA,
|
|
122
|
+
childNodesB
|
|
123
|
+
].concat(_to_consumable_array(remainingArguments)));
|
|
124
|
+
childNodesUnified = childNodesUnifiedAhead; ///
|
|
125
|
+
} else {
|
|
126
|
+
childNodesUnified = childNodesA.every(function(childNodeA, index) {
|
|
127
|
+
var childNodeB = childNodesB[index], nodeA = childNodeA, nodeB = childNodeB, nodeUnified = _this.unifyNode.apply(_this, [
|
|
128
|
+
nodeA,
|
|
129
|
+
nodeB
|
|
130
|
+
].concat(_to_consumable_array(remainingArguments)));
|
|
131
|
+
if (nodeUnified) {
|
|
132
|
+
return true;
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
}
|
|
121
136
|
}
|
|
122
137
|
}
|
|
123
138
|
return childNodesUnified;
|
|
@@ -130,8 +145,14 @@ var Unifier = /*#__PURE__*/ function() {
|
|
|
130
145
|
remainingArguments[_key - 2] = arguments[_key];
|
|
131
146
|
}
|
|
132
147
|
var terminalNodeUnified;
|
|
133
|
-
var
|
|
134
|
-
|
|
148
|
+
var lastRemainingArgumentFunction = (0, _arguments.isLastRemainingArgumentFunction)(remainingArguments);
|
|
149
|
+
if (lastRemainingArgumentFunction) {
|
|
150
|
+
var unifyAhead = remainingArguments.pop(), unifiedAhead = unifyAhead();
|
|
151
|
+
terminalNodeUnified = unifiedAhead; ///
|
|
152
|
+
remainingArguments.push(unifiedAhead);
|
|
153
|
+
} else {
|
|
154
|
+
terminalNodeUnified = true;
|
|
155
|
+
}
|
|
135
156
|
return terminalNodeUnified;
|
|
136
157
|
}
|
|
137
158
|
},
|
|
@@ -191,8 +212,8 @@ var Unifier = /*#__PURE__*/ function() {
|
|
|
191
212
|
var childNodesUnified;
|
|
192
213
|
var unifyAhead = remainingArguments.pop(), childNodesALength = childNodesA.length;
|
|
193
214
|
if (index === childNodesALength) {
|
|
194
|
-
var
|
|
195
|
-
childNodesUnified =
|
|
215
|
+
var unifiedAhead = unifyAhead();
|
|
216
|
+
childNodesUnified = unifiedAhead; ///
|
|
196
217
|
} else {
|
|
197
218
|
var childNodeA = childNodesA[index], childNodeB = childNodesB[index], nodeA = childNodeA, nodeB = childNodeB, nodeUnified = this.unifyNode.apply(this, [
|
|
198
219
|
nodeA,
|
|
@@ -200,12 +221,12 @@ var Unifier = /*#__PURE__*/ function() {
|
|
|
200
221
|
].concat(_to_consumable_array(remainingArguments), [
|
|
201
222
|
function() {
|
|
202
223
|
remainingArguments.push(unifyAhead); ///
|
|
203
|
-
var aheadIndex = index + 1,
|
|
224
|
+
var aheadIndex = index + 1, childNodesUnifiedAhead = _this.unifyChildNodesAhead.apply(_this, [
|
|
204
225
|
aheadIndex,
|
|
205
226
|
childNodesA,
|
|
206
227
|
childNodesB
|
|
207
228
|
].concat(_to_consumable_array(remainingArguments)));
|
|
208
|
-
return
|
|
229
|
+
return childNodesUnifiedAhead;
|
|
209
230
|
}
|
|
210
231
|
]));
|
|
211
232
|
childNodesUnified = nodeUnified; ///
|
|
@@ -217,4 +238,4 @@ var Unifier = /*#__PURE__*/ function() {
|
|
|
217
238
|
return Unifier;
|
|
218
239
|
}();
|
|
219
240
|
|
|
220
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91bmlmaWVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IHRlcm1pbmFsTm9kZU1hcEZyb21Ob2RlcywgYXJlVGVybWluYWxOb2RlTWFwc0VxdWFsIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3VuaWZpZXJcIjtcblxuY29uc3Qgbm9uVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvKlwiKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVW5pZmllciB7XG4gIHVuaWZ5KG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IHVuaWZpZWQ7XG5cbiAgICBjb25zdCBub2RlVW5pZmllZCA9IHRoaXMudW5pZnlOb2RlKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIHVuaWZpZWQgPSBub2RlVW5pZmllZDsgIC8vL1xuXG4gICAgcmV0dXJuIHVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeU5vZGUobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgbm9kZVVuaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vZGVBVGVybWluYWxOb2RlID0gbm9kZUEuaXNUZXJtaW5hbE5vZGUoKSxcbiAgICAgICAgICBub2RlQlRlcm1pbmFsTm9kZSA9IG5vZGVCLmlzVGVybWluYWxOb2RlKCksXG4gICAgICAgICAgbm9kZUFOb25UZXJtaW5hbE5vZGUgPSBub2RlQS5pc05vblRlcm1pbmFsTm9kZSgpLFxuICAgICAgICAgIG5vZGVCTm9uVGVybWluYWxOb2RlID0gbm9kZUIuaXNOb25UZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmIChub2RlQVRlcm1pbmFsTm9kZSAmJiBub2RlQlRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybWluYWxOb2RlQSA9IG5vZGVBLCAgLy8vXG4gICAgICAgICAgICB0ZXJtaW5hbE5vZGVCID0gbm9kZUIsICAvLy9cbiAgICAgICAgICAgIHRlcm1pbmFsTm9kZVVuaWZpZWQgPSB0aGlzLnVuaWZ5VGVybWluYWxOb2RlKHRlcm1pbmFsTm9kZUEsIHRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgIG5vZGVVbmlmaWVkID0gdGVybWluYWxOb2RlVW5pZmllZDsgIC8vL1xuICAgIH0gZWxzZSBpZiAobm9kZUFOb25UZXJtaW5hbE5vZGUgJiYgbm9kZUJOb25UZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSBub2RlQSwgIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQiA9IG5vZGVCLCAvLy9cbiAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPSB0aGlzLnVuaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgIG5vZGVVbmlmaWVkID0gbm9uVGVybWluYWxOb2RlVW5pZmllZDsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVVbmlmaWVkO1xuICB9XG5cbiAgdW5pZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXNBLCBjaGlsZE5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IGNoaWxkTm9kZXNVbmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBjaGlsZE5vZGVzQUxlbmd0aCA9IGNoaWxkTm9kZXNBLmxlbmd0aCxcbiAgICAgICAgICBjaGlsZE5vZGVzQkxlbmd0aCA9IGNoaWxkTm9kZXNCLmxlbmd0aDtcblxuICAgIGlmIChjaGlsZE5vZGVzQUxlbmd0aCA9PT0gY2hpbGROb2Rlc0JMZW5ndGgpIHtcbiAgICAgIGNvbnN0IGNoaWxkVGVybWluYWxOb2RlTWFwQSA9IHRlcm1pbmFsTm9kZU1hcEZyb21Ob2RlcyhjaGlsZE5vZGVzQSksXG4gICAgICAgICAgICBjaGlsZFRlcm1pbmFsTm9kZU1hcEIgPSB0ZXJtaW5hbE5vZGVNYXBGcm9tTm9kZXMoY2hpbGROb2Rlc0IpLFxuICAgICAgICAgICAgdGVybWluYWxOb2RlTWFwc0VxdWFsID0gYXJlVGVybWluYWxOb2RlTWFwc0VxdWFsKGNoaWxkVGVybWluYWxOb2RlTWFwQSwgY2hpbGRUZXJtaW5hbE5vZGVNYXBCKTtcblxuICAgICAgaWYgKHRlcm1pbmFsTm9kZU1hcHNFcXVhbCkge1xuICAgICAgICBjb25zdCBpbmRleCA9IDAsXG4gICAgICAgICAgICAgIGNoaWxkTm9kZXNWZXJpZnlBaGVhZCA9IHRoaXMudW5pZnlDaGlsZE5vZGVzQWhlYWQoaW5kZXgsIGNoaWxkTm9kZXNBLCBjaGlsZE5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgICBjaGlsZE5vZGVzVW5pZmllZCA9IGNoaWxkTm9kZXNWZXJpZnlBaGVhZDsgLy8vXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNVbmlmaWVkO1xuICB9XG5cbiAgdW5pZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7IC8vL1xuICAgIGxldCB0ZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgY29uc3QgdW5pZnlBaGVhZCA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSxcbiAgICAgICAgICB1bmlmeWllZEFoZWFkID0gdW5pZnlBaGVhZCgpO1xuXG4gICAgdGVybWluYWxOb2RlVW5pZmllZCA9IHVuaWZ5aWVkQWhlYWQ7ICAvLy9cblxuICAgIHJldHVybiB0ZXJtaW5hbE5vZGVVbmlmaWVkO1xuICB9XG5cbiAgdW5pZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG5cbiAgICBsZXQgeyBtYXBzIH0gPSB0aGlzLmNvbnN0cnVjdG9yO1xuXG4gICAgbWFwcyA9IFsgLy8vXG4gICAgICAuLi5tYXBzLFxuICAgICAge1xuICAgICAgICBub2RlUXVlcnlBOiBub25UZXJtaW5hbE5vZGVRdWVyeSxcbiAgICAgICAgbm9kZVF1ZXJ5Qjogbm9uVGVybWluYWxOb2RlUXVlcnksXG4gICAgICAgIHVuaWZ5OiAobm9kZUEsIG5vYmVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpID0+IHtcbiAgICAgICAgICBsZXQgbm9uVGVybWluYWxOb2RlVW5pZmllZDtcblxuICAgICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZUEuZ2V0UnVsZU5hbWUoKSwgLy8vXG4gICAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQi5nZXRSdWxlTmFtZSgpOyAvLy9cblxuICAgICAgICAgIGlmIChub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUgPT09IG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSkge1xuICAgICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQUNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGVBLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlQi5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICAgICAgICBjaGlsZE5vZGVzQSA9IG5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNCID0gbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICAgICAgY2hpbGROb2Rlc1VuaWZpZWQgPSB0aGlzLnVuaWZ5Q2hpbGROb2RlcyhjaGlsZE5vZGVzQSwgY2hpbGROb2Rlc0IsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPSBjaGlsZE5vZGVzVW5pZmllZDsgLy8vXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdXG5cbiAgICBsZXQgbm9kZVVuaWZpZWQgPSBmYWxzZTtcblxuICAgIG1hcHMuc29tZSgobWFwKSA9PiB7XG4gICAgICBjb25zdCB7IG5vZGVRdWVyeUEsIG5vZGVRdWVyeUIsIHVuaWZ5IH0gPSBtYXA7XG5cbiAgICAgIGNvbnN0IG5vZGVBID0gbm9kZVF1ZXJ5QShub25UZXJtaW5hbE5vZGVBKSwgIC8vL1xuICAgICAgICAgICAgbm9kZUIgPSBub2RlUXVlcnlCKG5vblRlcm1pbmFsTm9kZUIpOyAgLy8vXG5cbiAgICAgIGlmICgobm9kZUEgIT09IG51bGwpICYmIChub2RlQiAhPT0gbnVsbCkpIHtcbiAgICAgICAgbm9kZVVuaWZpZWQgPSB1bmlmeShub2RlQSwgbm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBub25UZXJtaW5hbE5vZGVVbmlmaWVkID0gbm9kZVVuaWZpZWQ7IC8vL1xuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeUNoaWxkTm9kZXNBaGVhZChpbmRleCwgY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgY2hpbGROb2Rlc1VuaWZpZWQ7XG5cbiAgICBjb25zdCB1bmlmeUFoZWFkID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpLCAvLy9cbiAgICAgICAgICBjaGlsZE5vZGVzQUxlbmd0aCA9IGNoaWxkTm9kZXNBLmxlbmd0aDtcblxuICAgIGlmIChpbmRleCA9PT0gY2hpbGROb2Rlc0FMZW5ndGgpIHtcbiAgICAgIGNvbnN0IHVuaWZ5aWVkQWhlYWQgPSB1bmlmeUFoZWFkKCk7XG5cbiAgICAgIGNoaWxkTm9kZXNVbmlmaWVkID0gdW5pZnlpZWRBaGVhZDsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZUEgPSBjaGlsZE5vZGVzQVtpbmRleF0sXG4gICAgICAgICAgICBjaGlsZE5vZGVCID0gY2hpbGROb2Rlc0JbaW5kZXhdLFxuICAgICAgICAgICAgbm9kZUEgPSBjaGlsZE5vZGVBLCAvLy9cbiAgICAgICAgICAgIG5vZGVCID0gY2hpbGROb2RlQiwgLy8vXG4gICAgICAgICAgICBub2RlVW5pZmllZCA9IHRoaXMudW5pZnlOb2RlKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCAoKSA9PiB7XG4gICAgICAgICAgICAgIHJlbWFpbmluZ0FyZ3VtZW50cy5wdXNoKHVuaWZ5QWhlYWQpOyAvLy9cblxuICAgICAgICAgICAgICBjb25zdCBhaGVhZEluZGV4ID0gaW5kZXggKyAxLFxuICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGVzVmVyaWZ5QWhlYWQgPSB0aGlzLnVuaWZ5Q2hpbGROb2Rlc0FoZWFkKGFoZWFkSW5kZXgsIGNoaWxkTm9kZXNBLCBjaGlsZE5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgICAgICAgICByZXR1cm4gY2hpbGROb2Rlc1ZlcmlmeUFoZWFkO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgIGNoaWxkTm9kZXNVbmlmaWVkID0gbm9kZVVuaWZpZWQ7ICAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1VuaWZpZWQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJVbmlmaWVyIiwibm9uVGVybWluYWxOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ1bmlmeSIsIm5vZGVBIiwibm9kZUIiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJ1bmlmaWVkIiwibm9kZVVuaWZpZWQiLCJ1bmlmeU5vZGUiLCJub2RlQVRlcm1pbmFsTm9kZSIsImlzVGVybWluYWxOb2RlIiwibm9kZUJUZXJtaW5hbE5vZGUiLCJub2RlQU5vblRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwibm9kZUJOb25UZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGVBIiwidGVybWluYWxOb2RlQiIsInRlcm1pbmFsTm9kZVVuaWZpZWQiLCJ1bmlmeVRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZUEiLCJub25UZXJtaW5hbE5vZGVCIiwibm9uVGVybWluYWxOb2RlVW5pZmllZCIsInVuaWZ5Tm9uVGVybWluYWxOb2RlIiwidW5pZnlDaGlsZE5vZGVzIiwiY2hpbGROb2Rlc0EiLCJjaGlsZE5vZGVzQiIsImNoaWxkTm9kZXNVbmlmaWVkIiwiY2hpbGROb2Rlc0FMZW5ndGgiLCJsZW5ndGgiLCJjaGlsZE5vZGVzQkxlbmd0aCIsImNoaWxkVGVybWluYWxOb2RlTWFwQSIsInRlcm1pbmFsTm9kZU1hcEZyb21Ob2RlcyIsImNoaWxkVGVybWluYWxOb2RlTWFwQiIsInRlcm1pbmFsTm9kZU1hcHNFcXVhbCIsImFyZVRlcm1pbmFsTm9kZU1hcHNFcXVhbCIsImluZGV4IiwiY2hpbGROb2Rlc1ZlcmlmeUFoZWFkIiwidW5pZnlDaGlsZE5vZGVzQWhlYWQiLCJ1bmlmeUFoZWFkIiwicG9wIiwidW5pZnlpZWRBaGVhZCIsIm1hcHMiLCJjb25zdHJ1Y3RvciIsIm5vZGVRdWVyeUEiLCJub2RlUXVlcnlCIiwibm9iZUIiLCJub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsIm5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzIiwic29tZSIsIm1hcCIsImNoaWxkTm9kZUEi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
|
|
241
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91bmlmaWVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IHRlcm1pbmFsTm9kZU1hcEZyb21Ob2RlcywgYXJlVGVybWluYWxOb2RlTWFwc0VxdWFsIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3VuaWZpZXJcIjtcbmltcG9ydCB7aXNMYXN0UmVtYWluaW5nQXJndW1lbnRGdW5jdGlvbn0gZnJvbSBcIi4vdXRpbGl0aWVzL2FyZ3VtZW50c1wiO1xuXG5jb25zdCBub25UZXJtaW5hbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi8qXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBVbmlmaWVyIHtcbiAgdW5pZnkobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgdW5pZmllZDtcblxuICAgIGNvbnN0IG5vZGVVbmlmaWVkID0gdGhpcy51bmlmeU5vZGUobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgdW5pZmllZCA9IG5vZGVVbmlmaWVkOyAgLy8vXG5cbiAgICByZXR1cm4gdW5pZmllZDtcbiAgfVxuXG4gIHVuaWZ5Tm9kZShub2RlQSwgbm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBub2RlVW5pZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9kZUFUZXJtaW5hbE5vZGUgPSBub2RlQS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICAgIG5vZGVCVGVybWluYWxOb2RlID0gbm9kZUIuaXNUZXJtaW5hbE5vZGUoKSxcbiAgICAgICAgICBub2RlQU5vblRlcm1pbmFsTm9kZSA9IG5vZGVBLmlzTm9uVGVybWluYWxOb2RlKCksXG4gICAgICAgICAgbm9kZUJOb25UZXJtaW5hbE5vZGUgPSBub2RlQi5pc05vblRlcm1pbmFsTm9kZSgpO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKG5vZGVBVGVybWluYWxOb2RlICYmIG5vZGVCVGVybWluYWxOb2RlKSB7XG4gICAgICBjb25zdCB0ZXJtaW5hbE5vZGVBID0gbm9kZUEsICAvLy9cbiAgICAgICAgICAgIHRlcm1pbmFsTm9kZUIgPSBub2RlQiwgIC8vL1xuICAgICAgICAgICAgdGVybWluYWxOb2RlVW5pZmllZCA9IHRoaXMudW5pZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgbm9kZVVuaWZpZWQgPSB0ZXJtaW5hbE5vZGVVbmlmaWVkOyAgLy8vXG4gICAgfSBlbHNlIGlmIChub2RlQU5vblRlcm1pbmFsTm9kZSAmJiBub2RlQk5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IG5vZGVBLCAgLy8vXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUIsIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9IHRoaXMudW5pZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgbm9kZVVuaWZpZWQgPSBub25UZXJtaW5hbE5vZGVVbmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbm9kZVVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeUNoaWxkTm9kZXMoY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgY2hpbGROb2Rlc1VuaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IGNoaWxkTm9kZXNBTGVuZ3RoID0gY2hpbGROb2Rlc0EubGVuZ3RoLFxuICAgICAgICAgIGNoaWxkTm9kZXNCTGVuZ3RoID0gY2hpbGROb2Rlc0IubGVuZ3RoO1xuXG4gICAgaWYgKGNoaWxkTm9kZXNBTGVuZ3RoID09PSBjaGlsZE5vZGVzQkxlbmd0aCkge1xuICAgICAgY29uc3QgY2hpbGRUZXJtaW5hbE5vZGVNYXBBID0gdGVybWluYWxOb2RlTWFwRnJvbU5vZGVzKGNoaWxkTm9kZXNBKSxcbiAgICAgICAgICAgIGNoaWxkVGVybWluYWxOb2RlTWFwQiA9IHRlcm1pbmFsTm9kZU1hcEZyb21Ob2RlcyhjaGlsZE5vZGVzQiksXG4gICAgICAgICAgICB0ZXJtaW5hbE5vZGVNYXBzRXF1YWwgPSBhcmVUZXJtaW5hbE5vZGVNYXBzRXF1YWwoY2hpbGRUZXJtaW5hbE5vZGVNYXBBLCBjaGlsZFRlcm1pbmFsTm9kZU1hcEIpO1xuXG4gICAgICBpZiAodGVybWluYWxOb2RlTWFwc0VxdWFsKSB7XG4gICAgICAgIGNvbnN0IGxhc3RSZW1haW5pbmdBcmd1bWVudEZ1bmN0aW9uID0gaXNMYXN0UmVtYWluaW5nQXJndW1lbnRGdW5jdGlvbihyZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICAgIGlmIChsYXN0UmVtYWluaW5nQXJndW1lbnRGdW5jdGlvbikge1xuICAgICAgICAgIGNvbnN0IGluZGV4ID0gMCxcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVzVW5pZmllZEFoZWFkID0gdGhpcy51bmlmeUNoaWxkTm9kZXNBaGVhZChpbmRleCwgY2hpbGROb2Rlc0EsIGNoaWxkTm9kZXNCLC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgICAgICBjaGlsZE5vZGVzVW5pZmllZCA9IGNoaWxkTm9kZXNVbmlmaWVkQWhlYWQ7IC8vL1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNoaWxkTm9kZXNVbmlmaWVkID0gY2hpbGROb2Rlc0EuZXZlcnkoKGNoaWxkTm9kZUEsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjaGlsZE5vZGVCID0gY2hpbGROb2Rlc0JbaW5kZXhdLFxuICAgICAgICAgICAgICAgICAgbm9kZUEgPSBjaGlsZE5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgICAgIG5vZGVCID0gY2hpbGROb2RlQiwgLy8vXG4gICAgICAgICAgICAgICAgICBub2RlVW5pZmllZCA9IHRoaXMudW5pZnlOb2RlKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgICAgICAgaWYgKG5vZGVVbmlmaWVkKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNVbmlmaWVkO1xuICB9XG5cbiAgdW5pZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7IC8vL1xuICAgIGxldCB0ZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgY29uc3QgbGFzdFJlbWFpbmluZ0FyZ3VtZW50RnVuY3Rpb24gPSBpc0xhc3RSZW1haW5pbmdBcmd1bWVudEZ1bmN0aW9uKHJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICBpZiAobGFzdFJlbWFpbmluZ0FyZ3VtZW50RnVuY3Rpb24pIHtcbiAgICAgIGNvbnN0IHVuaWZ5QWhlYWQgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksXG4gICAgICAgICAgICB1bmlmaWVkQWhlYWQgPSB1bmlmeUFoZWFkKCk7XG5cbiAgICAgIHRlcm1pbmFsTm9kZVVuaWZpZWQgPSB1bmlmaWVkQWhlYWQ7ICAvLy9cblxuICAgICAgcmVtYWluaW5nQXJndW1lbnRzLnB1c2godW5pZmllZEFoZWFkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGVybWluYWxOb2RlVW5pZmllZCA9IHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRlcm1pbmFsTm9kZVVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVW5pZmllZDtcblxuICAgIGxldCB7IG1hcHMgfSA9IHRoaXMuY29uc3RydWN0b3I7XG5cbiAgICBtYXBzID0gWyAvLy9cbiAgICAgIC4uLm1hcHMsXG4gICAgICB7XG4gICAgICAgIG5vZGVRdWVyeUE6IG5vblRlcm1pbmFsTm9kZVF1ZXJ5LFxuICAgICAgICBub2RlUXVlcnlCOiBub25UZXJtaW5hbE5vZGVRdWVyeSxcbiAgICAgICAgdW5pZnk6IChub2RlQSwgbm9iZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykgPT4ge1xuICAgICAgICAgIGxldCBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVCLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gICAgICAgICAgaWYgKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9PT0gbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lKSB7XG4gICAgICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZUEuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGVCLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgICAgIGNoaWxkTm9kZXNBID0gbm9uVGVybWluYWxOb2RlQUNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICAgICAgY2hpbGROb2Rlc0IgPSBub25UZXJtaW5hbE5vZGVCQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgICAgICAgICBjaGlsZE5vZGVzVW5pZmllZCA9IHRoaXMudW5pZnlDaGlsZE5vZGVzKGNoaWxkTm9kZXNBLCBjaGlsZE5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9IGNoaWxkTm9kZXNVbmlmaWVkOyAvLy9cbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVW5pZmllZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIF1cblxuICAgIGxldCBub2RlVW5pZmllZCA9IGZhbHNlO1xuXG4gICAgbWFwcy5zb21lKChtYXApID0+IHtcbiAgICAgIGNvbnN0IHsgbm9kZVF1ZXJ5QSwgbm9kZVF1ZXJ5QiwgdW5pZnkgfSA9IG1hcDtcblxuICAgICAgY29uc3Qgbm9kZUEgPSBub2RlUXVlcnlBKG5vblRlcm1pbmFsTm9kZUEpLCAgLy8vXG4gICAgICAgICAgICBub2RlQiA9IG5vZGVRdWVyeUIobm9uVGVybWluYWxOb2RlQik7ICAvLy9cblxuICAgICAgaWYgKChub2RlQSAhPT0gbnVsbCkgJiYgKG5vZGVCICE9PSBudWxsKSkge1xuICAgICAgICBub2RlVW5pZmllZCA9IHVuaWZ5KG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQgPSBub2RlVW5pZmllZDsgLy8vXG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVW5pZmllZDtcbiAgfVxuXG4gIHVuaWZ5Q2hpbGROb2Rlc0FoZWFkKGluZGV4LCBjaGlsZE5vZGVzQSwgY2hpbGROb2Rlc0IsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBjaGlsZE5vZGVzVW5pZmllZDtcblxuICAgIGNvbnN0IHVuaWZ5QWhlYWQgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksIC8vL1xuICAgICAgICAgIGNoaWxkTm9kZXNBTGVuZ3RoID0gY2hpbGROb2Rlc0EubGVuZ3RoO1xuXG4gICAgaWYgKGluZGV4ID09PSBjaGlsZE5vZGVzQUxlbmd0aCkge1xuICAgICAgY29uc3QgdW5pZmllZEFoZWFkID0gdW5pZnlBaGVhZCgpO1xuXG4gICAgICBjaGlsZE5vZGVzVW5pZmllZCA9IHVuaWZpZWRBaGVhZDsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZUEgPSBjaGlsZE5vZGVzQVtpbmRleF0sXG4gICAgICAgICAgICBjaGlsZE5vZGVCID0gY2hpbGROb2Rlc0JbaW5kZXhdLFxuICAgICAgICAgICAgbm9kZUEgPSBjaGlsZE5vZGVBLCAvLy9cbiAgICAgICAgICAgIG5vZGVCID0gY2hpbGROb2RlQiwgLy8vXG4gICAgICAgICAgICBub2RlVW5pZmllZCA9IHRoaXMudW5pZnlOb2RlKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCAoKSA9PiB7XG4gICAgICAgICAgICAgIHJlbWFpbmluZ0FyZ3VtZW50cy5wdXNoKHVuaWZ5QWhlYWQpOyAvLy9cblxuICAgICAgICAgICAgICBjb25zdCBhaGVhZEluZGV4ID0gaW5kZXggKyAxLFxuICAgICAgICAgICAgICAgICAgICBjaGlsZE5vZGVzVW5pZmllZEFoZWFkID0gdGhpcy51bmlmeUNoaWxkTm9kZXNBaGVhZChhaGVhZEluZGV4LCBjaGlsZE5vZGVzQSwgY2hpbGROb2Rlc0IsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIGNoaWxkTm9kZXNVbmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgY2hpbGROb2Rlc1VuaWZpZWQgPSBub2RlVW5pZmllZDsgIC8vL1xuICAgIH1cblxuICAgIHJldHVybiBjaGlsZE5vZGVzVW5pZmllZDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlVuaWZpZXIiLCJub25UZXJtaW5hbE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInVuaWZ5Iiwibm9kZUEiLCJub2RlQiIsInJlbWFpbmluZ0FyZ3VtZW50cyIsInVuaWZpZWQiLCJub2RlVW5pZmllZCIsInVuaWZ5Tm9kZSIsIm5vZGVBVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJub2RlQlRlcm1pbmFsTm9kZSIsIm5vZGVBTm9uVGVybWluYWxOb2RlIiwiaXNOb25UZXJtaW5hbE5vZGUiLCJub2RlQk5vblRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZUEiLCJ0ZXJtaW5hbE5vZGVCIiwidGVybWluYWxOb2RlVW5pZmllZCIsInVuaWZ5VGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJub25UZXJtaW5hbE5vZGVVbmlmaWVkIiwidW5pZnlOb25UZXJtaW5hbE5vZGUiLCJ1bmlmeUNoaWxkTm9kZXMiLCJjaGlsZE5vZGVzQSIsImNoaWxkTm9kZXNCIiwiY2hpbGROb2Rlc1VuaWZpZWQiLCJjaGlsZE5vZGVzQUxlbmd0aCIsImxlbmd0aCIsImNoaWxkTm9kZXNCTGVuZ3RoIiwiY2hpbGRUZXJtaW5hbE5vZGVNYXBBIiwidGVybWluYWxOb2RlTWFwRnJvbU5vZGVzIiwiY2hpbGRUZXJtaW5hbE5vZGVNYXBCIiwidGVybWluYWxOb2RlTWFwc0VxdWFsIiwiYXJlVGVybWluYWxOb2RlTWFwc0VxdWFsIiwibGFzdFJlbWFpbmluZ0FyZ3VtZW50RnVuY3Rpb24iLCJpc0xhc3RSZW1haW5pbmdBcmd1bWVudEZ1bmN0aW9uIiwiaW5kZXgiLCJjaGlsZE5vZGVzVW5pZmllZEFoZWFkIiwidW5pZnlDaGlsZE5vZGVzQWhlYWQiLCJldmVyeSIsImNoaWxkTm9kZUEiLCJjaGlsZE5vZGVCIiwidW5pZnlBaGVhZCIsInBvcCIsInVuaWZpZWRBaGVhZCIsInB1c2giLCJtYXBzIiwiY29uc3RydWN0b3IiLCJub2RlUXVlcnlBIiwibm9kZVF1ZXJ5QiIsIm5vYmVCIiwibm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUiLCJub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJub25UZXJtaW5hbE5vZGVCQ2hpbGROb2RlcyIsInNvbWUiLCJtYXAiLCJhaGVhZEluZGV4Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVFxQkE7OztxQkFOSzt1QkFDeUM7eUJBQ3JCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsSUFBTUMsdUJBQXVCQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXhCLElBQUEsQUFBTUYsd0JBQUQsQUFBTDthQUFNQTtnQ0FBQUE7O2tCQUFBQTs7WUFDbkJHLEtBQUFBO21CQUFBQSxTQUFBQSxNQUFNQyxLQUFLLEVBQUVDLEtBQUs7Z0JBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdDLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO29CQUFHQSxtQkFBSCxPQUFBLEtBQUEsU0FBQSxDQUFBLEtBQXFCOztnQkFDdkMsSUFBSUM7Z0JBRUosSUFBTUMsY0FBYyxJQUFJLENBQUNDLFNBQVMsQ0FBZCxNQUFBLElBQUksRUFBSjtvQkFBZUw7b0JBQU9DO2lCQUE2QixDQUFuRCxPQUE2QixxQkFBR0M7Z0JBRXBEQyxVQUFVQyxhQUFjLEdBQUc7Z0JBRTNCLE9BQU9EO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVUwsS0FBSyxFQUFFQyxLQUFLO2dCQUFFLElBQUEsSUFBQSxPQUFBLFVBQUEsUUFBQSxBQUFHQyxxQkFBSCxVQUFBLE9BQUEsSUFBQSxPQUFBLFFBQUEsT0FBQSxHQUFBLE9BQUEsTUFBQTtvQkFBR0EsbUJBQUgsT0FBQSxLQUFBLFNBQUEsQ0FBQSxLQUFxQjs7Z0JBQzNDLElBQUlFLGNBQWM7Z0JBRWxCLElBQU1FLG9CQUFvQk4sTUFBTU8sY0FBYyxJQUN4Q0Msb0JBQW9CUCxNQUFNTSxjQUFjLElBQ3hDRSx1QkFBdUJULE1BQU1VLGlCQUFpQixJQUM5Q0Ms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
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return unifyConclusionAgainstStatement;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _local = /*#__PURE__*/ _interop_require_default(require("../context/local"));
|
|
12
|
+
function _interop_require_default(obj) {
|
|
13
|
+
return obj && obj.__esModule ? obj : {
|
|
14
|
+
default: obj
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
function unifyConclusionAgainstStatement(conclusionA, statementNodeB, substitutions, fileContextA, localContextB) {
|
|
18
|
+
var conclusionUnified = false;
|
|
19
|
+
var conclusionAStatementNode = conclusionA.getStatementNode();
|
|
20
|
+
if (conclusionAStatementNode !== null) {
|
|
21
|
+
var localContextA = _local.default.fromFileContext(fileContextA), statementNodeA = conclusionAStatementNode, statementStringA = localContextA.nodeAsString(statementNodeA), statementStringB = localContextB.nodeAsString(statementNodeB);
|
|
22
|
+
substitutions.snapshot();
|
|
23
|
+
localContextB.trace("Unifying the '".concat(statementStringB, "' statement against the conclusion's '").concat(statementStringA, "' statement..."), statementNodeB);
|
|
24
|
+
var statementUnified = conclusionA.unifyStatement(statementNodeB, substitutions, localContextA, localContextB);
|
|
25
|
+
conclusionUnified = statementUnified; ///
|
|
26
|
+
conclusionUnified ? substitutions.continue() : substitutions.rollback(localContextA, localContextB);
|
|
27
|
+
if (conclusionUnified) {
|
|
28
|
+
localContextB.debug("...unified the '".concat(statementStringB, "' statement against the conclusion's '").concat(statementStringA, "' statement."), statementNodeB);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return conclusionUnified;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmeS9jb25jbHVzaW9uQWdhaW5zdFN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IExvY2FsQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9sb2NhbFwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1bmlmeUNvbmNsdXNpb25BZ2FpbnN0U3RhdGVtZW50KGNvbmNsdXNpb25BLCBzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbENvbnRleHRCKSB7XG4gIGxldCBjb25jbHVzaW9uVW5pZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGNvbmNsdXNpb25BU3RhdGVtZW50Tm9kZSA9IGNvbmNsdXNpb25BLmdldFN0YXRlbWVudE5vZGUoKTtcblxuICBpZiAoY29uY2x1c2lvbkFTdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbG9jYWxDb250ZXh0QSA9IExvY2FsQ29udGV4dC5mcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHRBKSxcbiAgICAgICAgICBzdGF0ZW1lbnROb2RlQSA9IGNvbmNsdXNpb25BU3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgIHN0YXRlbWVudFN0cmluZ0EgPSBsb2NhbENvbnRleHRBLm5vZGVBc1N0cmluZyhzdGF0ZW1lbnROb2RlQSksXG4gICAgICAgICAgc3RhdGVtZW50U3RyaW5nQiA9IGxvY2FsQ29udGV4dEIubm9kZUFzU3RyaW5nKHN0YXRlbWVudE5vZGVCKTtcblxuICAgIHN1YnN0aXR1dGlvbnMuc25hcHNob3QoKTtcblxuICAgIGxvY2FsQ29udGV4dEIudHJhY2UoYFVuaWZ5aW5nIHRoZSAnJHtzdGF0ZW1lbnRTdHJpbmdCfScgc3RhdGVtZW50IGFnYWluc3QgdGhlIGNvbmNsdXNpb24ncyAnJHtzdGF0ZW1lbnRTdHJpbmdBfScgc3RhdGVtZW50Li4uYCwgc3RhdGVtZW50Tm9kZUIpO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50VW5pZmllZCA9IGNvbmNsdXNpb25BLnVuaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCKTtcblxuICAgIGNvbmNsdXNpb25VbmlmaWVkID0gc3RhdGVtZW50VW5pZmllZDsgLy8vXG5cbiAgICBjb25jbHVzaW9uVW5pZmllZCA/XG4gICAgICBzdWJzdGl0dXRpb25zLmNvbnRpbnVlKCkgOlxuICAgICAgICBzdWJzdGl0dXRpb25zLnJvbGxiYWNrKGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIpO1xuXG4gICAgaWYgKGNvbmNsdXNpb25VbmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHRCLmRlYnVnKGAuLi51bmlmaWVkIHRoZSAnJHtzdGF0ZW1lbnRTdHJpbmdCfScgc3RhdGVtZW50IGFnYWluc3QgdGhlIGNvbmNsdXNpb24ncyAnJHtzdGF0ZW1lbnRTdHJpbmdBfScgc3RhdGVtZW50LmAsIHN0YXRlbWVudE5vZGVCKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uY2x1c2lvblVuaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidW5pZnlDb25jbHVzaW9uQWdhaW5zdFN0YXRlbWVudCIsImNvbmNsdXNpb25BIiwic3RhdGVtZW50Tm9kZUIiLCJzdWJzdGl0dXRpb25zIiwiZmlsZUNvbnRleHRBIiwibG9jYWxDb250ZXh0QiIsImNvbmNsdXNpb25VbmlmaWVkIiwiY29uY2x1c2lvbkFTdGF0ZW1lbnROb2RlIiwiZ2V0U3RhdGVtZW50Tm9kZSIsImxvY2FsQ29udGV4dEEiLCJMb2NhbENvbnRleHQiLCJmcm9tRmlsZUNvbnRleHQiLCJzdGF0ZW1lbnROb2RlQSIsInN0YXRlbWVudFN0cmluZ0EiLCJub2RlQXNTdHJpbmciLCJzdGF0ZW1lbnRTdHJpbmdCIiwic25hcHNob3QiLCJ0cmFjZSIsInN0YXRlbWVudFVuaWZpZWQiLCJ1bmlmeVN0YXRlbWVudCIsImNvbnRpbnVlIiwicm9sbGJhY2siLCJkZWJ1ZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBSUE7OztlQUF3QkE7Ozs0REFGQzs7Ozs7O0FBRVYsU0FBU0EsZ0NBQWdDQyxXQUFXLEVBQUVDLGNBQWMsRUFBRUMsYUFBYSxFQUFFQyxZQUFZLEVBQUVDLGFBQWE7SUFDN0gsSUFBSUMsb0JBQW9CO0lBRXhCLElBQU1DLDJCQUEyQk4sWUFBWU8sZ0JBQWdCO0lBRTdELElBQUlELDZCQUE2QixNQUFNO1FBQ3JDLElBQU1FLGdCQUFnQkMsY0FBWSxDQUFDQyxlQUFlLENBQUNQLGVBQzdDUSxpQkFBaUJMLDBCQUNqQk0sbUJBQW1CSixjQUFjSyxZQUFZLENBQUNGLGlCQUM5Q0csbUJBQW1CVixjQUFjUyxZQUFZLENBQUNaO1FBRXBEQyxjQUFjYSxRQUFRO1FBRXRCWCxjQUFjWSxLQUFLLENBQUMsQUFBQyxpQkFBeUVKLE9BQXpERSxrQkFBaUIsMENBQXlELE9BQWpCRixrQkFBaUIsbUJBQWlCWDtRQUVoSSxJQUFNZ0IsbUJBQW1CakIsWUFBWWtCLGNBQWMsQ0FBQ2pCLGdCQUFnQkMsZUFBZU0sZUFBZUo7UUFFbEdDLG9CQUFvQlksa0JBQWtCLEdBQUc7UUFFekNaLG9CQUNFSCxjQUFjaUIsUUFBUSxLQUNwQmpCLGNBQWNrQixRQUFRLENBQUNaLGVBQWVKO1FBRTFDLElBQUlDLG1CQUFtQjtZQUNyQkQsY0FBY2lCLEtBQUssQ0FBQyxBQUFDLG1CQUEyRVQsT0FBekRFLGtCQUFpQiwwQ0FBeUQsT0FBakJGLGtCQUFpQixpQkFBZVg7UUFDbEk7SUFDRjtJQUVBLE9BQU9JO0FBQ1QifQ==
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return unifyConsequentAgainstStatement;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _local = /*#__PURE__*/ _interop_require_default(require("../context/local"));
|
|
12
|
+
function _interop_require_default(obj) {
|
|
13
|
+
return obj && obj.__esModule ? obj : {
|
|
14
|
+
default: obj
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
function unifyConsequentAgainstStatement(consequentA, statementNodeB, substitutions, fileContextA, localContextB) {
|
|
18
|
+
var consequentUnified = false;
|
|
19
|
+
var consequentAStatementNode = consequentA.getStatementNode();
|
|
20
|
+
if (consequentAStatementNode !== null) {
|
|
21
|
+
var localContextA = _local.default.fromFileContext(fileContextA), statementNodeA = consequentAStatementNode, statementStringA = localContextA.nodeAsString(statementNodeA), statementStringB = localContextB.nodeAsString(statementNodeB);
|
|
22
|
+
substitutions.snapshot();
|
|
23
|
+
localContextB.trace("Unifying the '".concat(statementStringB, "' statement against the consequent's '").concat(statementStringA, "' statement..."), statementNodeB);
|
|
24
|
+
var statementUnified = consequentA.unifyStatement(statementNodeB, substitutions, localContextA, localContextB);
|
|
25
|
+
consequentUnified = statementUnified; ///
|
|
26
|
+
consequentUnified ? substitutions.continue() : substitutions.rollback(localContextA, localContextB);
|
|
27
|
+
if (consequentUnified) {
|
|
28
|
+
localContextB.debug("...unified the '".concat(statementStringB, "' statement against the consequent's '").concat(statementStringA, "' statement."), statementNodeB);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return consequentUnified;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmeS9jb25zZXF1ZW50QWdhaW5zdFN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IExvY2FsQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9sb2NhbFwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1bmlmeUNvbnNlcXVlbnRBZ2FpbnN0U3RhdGVtZW50KGNvbnNlcXVlbnRBLCBzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbENvbnRleHRCKSB7XG4gIGxldCBjb25zZXF1ZW50VW5pZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGNvbnNlcXVlbnRBU3RhdGVtZW50Tm9kZSA9IGNvbnNlcXVlbnRBLmdldFN0YXRlbWVudE5vZGUoKTtcblxuICBpZiAoY29uc2VxdWVudEFTdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbG9jYWxDb250ZXh0QSA9IExvY2FsQ29udGV4dC5mcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHRBKSxcbiAgICAgICAgICBzdGF0ZW1lbnROb2RlQSA9IGNvbnNlcXVlbnRBU3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgIHN0YXRlbWVudFN0cmluZ0EgPSBsb2NhbENvbnRleHRBLm5vZGVBc1N0cmluZyhzdGF0ZW1lbnROb2RlQSksXG4gICAgICAgICAgc3RhdGVtZW50U3RyaW5nQiA9IGxvY2FsQ29udGV4dEIubm9kZUFzU3RyaW5nKHN0YXRlbWVudE5vZGVCKTtcblxuICAgIHN1YnN0aXR1dGlvbnMuc25hcHNob3QoKTtcblxuICAgIGxvY2FsQ29udGV4dEIudHJhY2UoYFVuaWZ5aW5nIHRoZSAnJHtzdGF0ZW1lbnRTdHJpbmdCfScgc3RhdGVtZW50IGFnYWluc3QgdGhlIGNvbnNlcXVlbnQncyAnJHtzdGF0ZW1lbnRTdHJpbmdBfScgc3RhdGVtZW50Li4uYCwgc3RhdGVtZW50Tm9kZUIpO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50VW5pZmllZCA9IGNvbnNlcXVlbnRBLnVuaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCKTtcblxuICAgIGNvbnNlcXVlbnRVbmlmaWVkID0gc3RhdGVtZW50VW5pZmllZDsgLy8vXG5cbiAgICBjb25zZXF1ZW50VW5pZmllZCA/XG4gICAgICBzdWJzdGl0dXRpb25zLmNvbnRpbnVlKCkgOlxuICAgICAgICBzdWJzdGl0dXRpb25zLnJvbGxiYWNrKGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIpO1xuXG4gICAgaWYgKGNvbnNlcXVlbnRVbmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHRCLmRlYnVnKGAuLi51bmlmaWVkIHRoZSAnJHtzdGF0ZW1lbnRTdHJpbmdCfScgc3RhdGVtZW50IGFnYWluc3QgdGhlIGNvbnNlcXVlbnQncyAnJHtzdGF0ZW1lbnRTdHJpbmdBfScgc3RhdGVtZW50LmAsIHN0YXRlbWVudE5vZGVCKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uc2VxdWVudFVuaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidW5pZnlDb25zZXF1ZW50QWdhaW5zdFN0YXRlbWVudCIsImNvbnNlcXVlbnRBIiwic3RhdGVtZW50Tm9kZUIiLCJzdWJzdGl0dXRpb25zIiwiZmlsZUNvbnRleHRBIiwibG9jYWxDb250ZXh0QiIsImNvbnNlcXVlbnRVbmlmaWVkIiwiY29uc2VxdWVudEFTdGF0ZW1lbnROb2RlIiwiZ2V0U3RhdGVtZW50Tm9kZSIsImxvY2FsQ29udGV4dEEiLCJMb2NhbENvbnRleHQiLCJmcm9tRmlsZUNvbnRleHQiLCJzdGF0ZW1lbnROb2RlQSIsInN0YXRlbWVudFN0cmluZ0EiLCJub2RlQXNTdHJpbmciLCJzdGF0ZW1lbnRTdHJpbmdCIiwic25hcHNob3QiLCJ0cmFjZSIsInN0YXRlbWVudFVuaWZpZWQiLCJ1bmlmeVN0YXRlbWVudCIsImNvbnRpbnVlIiwicm9sbGJhY2siLCJkZWJ1ZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBSUE7OztlQUF3QkE7Ozs0REFGQzs7Ozs7O0FBRVYsU0FBU0EsZ0NBQWdDQyxXQUFXLEVBQUVDLGNBQWMsRUFBRUMsYUFBYSxFQUFFQyxZQUFZLEVBQUVDLGFBQWE7SUFDN0gsSUFBSUMsb0JBQW9CO0lBRXhCLElBQU1DLDJCQUEyQk4sWUFBWU8sZ0JBQWdCO0lBRTdELElBQUlELDZCQUE2QixNQUFNO1FBQ3JDLElBQU1FLGdCQUFnQkMsY0FBWSxDQUFDQyxlQUFlLENBQUNQLGVBQzdDUSxpQkFBaUJMLDBCQUNqQk0sbUJBQW1CSixjQUFjSyxZQUFZLENBQUNGLGlCQUM5Q0csbUJBQW1CVixjQUFjUyxZQUFZLENBQUNaO1FBRXBEQyxjQUFjYSxRQUFRO1FBRXRCWCxjQUFjWSxLQUFLLENBQUMsQUFBQyxpQkFBeUVKLE9BQXpERSxrQkFBaUIsMENBQXlELE9BQWpCRixrQkFBaUIsbUJBQWlCWDtRQUVoSSxJQUFNZ0IsbUJBQW1CakIsWUFBWWtCLGNBQWMsQ0FBQ2pCLGdCQUFnQkMsZUFBZU0sZUFBZUo7UUFFbEdDLG9CQUFvQlksa0JBQWtCLEdBQUc7UUFFekNaLG9CQUNFSCxjQUFjaUIsUUFBUSxLQUNwQmpCLGNBQWNrQixRQUFRLENBQUNaLGVBQWVKO1FBRTFDLElBQUlDLG1CQUFtQjtZQUNyQkQsY0FBY2lCLEtBQUssQ0FBQyxBQUFDLG1CQUEyRVQsT0FBekRFLGtCQUFpQiwwQ0FBeUQsT0FBakJGLGtCQUFpQixpQkFBZVg7UUFDbEk7SUFDRjtJQUVBLE9BQU9JO0FBQ1QifQ==
|
|
@@ -11,14 +11,16 @@ Object.defineProperty(exports, "default", {
|
|
|
11
11
|
var _termForVariable = /*#__PURE__*/ _interop_require_default(require("../substitution/termForVariable"));
|
|
12
12
|
var _statementAtainstStatement = /*#__PURE__*/ _interop_require_default(require("../unify/statementAtainstStatement"));
|
|
13
13
|
var _statementForMetavariable = /*#__PURE__*/ _interop_require_default(require("../substitution/statementForMetavariable"));
|
|
14
|
+
var _query = require("../utilities/query");
|
|
14
15
|
function _interop_require_default(obj) {
|
|
15
16
|
return obj && obj.__esModule ? obj : {
|
|
16
17
|
default: obj
|
|
17
18
|
};
|
|
18
19
|
}
|
|
19
|
-
|
|
20
|
+
var metavariableNodeQuery = (0, _query.nodeQuery)("/statement/metavariable");
|
|
21
|
+
function unifyMetavariableAgainstStatement(metavariableNodeA, statementNodeB, substitutionNodeA, substitutions, localContextA, localContextB) {
|
|
20
22
|
var metavariableUnifiedAgainstStatement = false;
|
|
21
|
-
var substitution = substitutions.
|
|
23
|
+
var substitution = substitutions.findSubstitution(function(substitution) {
|
|
22
24
|
var substitutionMatchesMetavariableNodeA = substitution.matchMetavariableNode(metavariableNodeA);
|
|
23
25
|
if (substitutionMatchesMetavariableNodeA) {
|
|
24
26
|
return true;
|
|
@@ -29,8 +31,7 @@ function unifyMetavariableAgainstStatement(metavariableNodeA, statementNodeB, su
|
|
|
29
31
|
if (substitutionNodeA !== null) {
|
|
30
32
|
var substitutionNode = substitutionNodeA, termForVariableSubstitution = _termForVariable.default.fromSubstitutionNode(substitutionNode), localContext = localContextB, substitution1 = termForVariableSubstitution, statementNodeA = substitutionStatementNode, statementUnifiedAgainstStatement = (0, _statementAtainstStatement.default)(statementNodeA, statementNodeB, substitution1, substitutions, localContext, localContext);
|
|
31
33
|
if (statementUnifiedAgainstStatement) {
|
|
32
|
-
|
|
33
|
-
metavariableUnifiedAgainstStatement = unifiedAhead; ///
|
|
34
|
+
metavariableUnifiedAgainstStatement = true;
|
|
34
35
|
}
|
|
35
36
|
} else {
|
|
36
37
|
var substitutionSubstitution = substitution.getSubstitution();
|
|
@@ -39,28 +40,35 @@ function unifyMetavariableAgainstStatement(metavariableNodeA, statementNodeB, su
|
|
|
39
40
|
statementNodeB = substitutionStatementNode; ///
|
|
40
41
|
var localContext1 = localContextB, substitution2 = substitutionSubstitution, statementUnifiedAgainstStatement1 = (0, _statementAtainstStatement.default)(statementNodeA1, statementNodeB, substitution2, substitutions, localContext1, localContext1);
|
|
41
42
|
if (statementUnifiedAgainstStatement1) {
|
|
42
|
-
|
|
43
|
-
metavariableUnifiedAgainstStatement = unifiedAhead1; ///
|
|
43
|
+
metavariableUnifiedAgainstStatement = true;
|
|
44
44
|
}
|
|
45
45
|
} else {
|
|
46
46
|
var substitutionMatchesStatementNodeB = substitution.matchStatementNode(statementNodeB);
|
|
47
47
|
if (substitutionMatchesStatementNodeB) {
|
|
48
|
-
|
|
49
|
-
metavariableUnifiedAgainstStatement = unifiedAhead2; ///
|
|
48
|
+
metavariableUnifiedAgainstStatement = true;
|
|
50
49
|
}
|
|
51
50
|
}
|
|
52
51
|
}
|
|
53
52
|
} else {
|
|
54
|
-
var
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
53
|
+
var metavariableA = localContextA.findMetavariableByMetavariableNode(metavariableNodeA);
|
|
54
|
+
if (metavariableA !== null) {
|
|
55
|
+
var metavariableB = metavariableFromStatementNode(statementNodeB, localContextB);
|
|
56
|
+
if (metavariableA !== metavariableB) {
|
|
57
|
+
var statementNode = statementNodeB, substitutionNode1 = substitutionNodeA, metavariableNode = metavariableNodeA, statementForMetavariableSubstitution = _statementForMetavariable.default.fromMetavariableNodeStatementNodeAndSubstitutionNode(metavariableNode, statementNode, substitutionNode1), substitution3 = statementForMetavariableSubstitution; ///
|
|
58
|
+
substitutions.addSubstitution(substitution3, localContextA, localContextB);
|
|
59
|
+
}
|
|
60
|
+
metavariableUnifiedAgainstStatement = true;
|
|
60
61
|
}
|
|
61
|
-
metavariableUnifiedAgainstStatement = unifiedAhead3; ///
|
|
62
62
|
}
|
|
63
63
|
return metavariableUnifiedAgainstStatement;
|
|
64
64
|
}
|
|
65
|
+
function metavariableFromStatementNode(statementNode, localContext) {
|
|
66
|
+
var metavariable = null;
|
|
67
|
+
var metavariableNode = metavariableNodeQuery(statementNode);
|
|
68
|
+
if (metavariableNode !== null) {
|
|
69
|
+
metavariable = localContext.findMetavariableByMetavariableNode(metavariableNode);
|
|
70
|
+
}
|
|
71
|
+
return metavariable;
|
|
72
|
+
}
|
|
65
73
|
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmeS9tZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi9zdWJzdGl0dXRpb24vdGVybUZvclZhcmlhYmxlXCI7XG5pbXBvcnQgdW5pZnlTdGF0ZW1lbnRBZ2FpbnN0U3RhdGVtZW50IGZyb20gXCIuLi91bmlmeS9zdGF0ZW1lbnRBdGFpbnN0U3RhdGVtZW50XCI7XG5pbXBvcnQgU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi9zdWJzdGl0dXRpb24vc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC9tZXRhdmFyaWFibGVcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVuaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdFN0YXRlbWVudChtZXRhdmFyaWFibGVOb2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbk5vZGVBLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCKSB7XG4gIGxldCBtZXRhdmFyaWFibGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudCA9IGZhbHNlO1xuXG4gIGNvbnN0IHN1YnN0aXR1dGlvbiA9IHN1YnN0aXR1dGlvbnMuZmluZFN1YnN0aXR1dGlvbigoc3Vic3RpdHV0aW9uKSA9PiB7XG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uTWF0Y2hlc01ldGF2YXJpYWJsZU5vZGVBID0gc3Vic3RpdHV0aW9uLm1hdGNoTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlQSk7XG5cbiAgICBpZiAoc3Vic3RpdHV0aW9uTWF0Y2hlc01ldGF2YXJpYWJsZU5vZGVBKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pIHx8IG51bGw7XG5cbiAgaWYgKHN1YnN0aXR1dGlvbiAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHN1YnN0aXR1dGlvblN0YXRlbWVudE5vZGUgPSBzdWJzdGl0dXRpb24uZ2V0U3RhdGVtZW50Tm9kZSgpO1xuXG4gICAgaWYgKHN1YnN0aXR1dGlvbk5vZGVBICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdWJzdGl0dXRpb25Ob2RlID0gc3Vic3RpdHV0aW9uTm9kZUEsIC8vL1xuICAgICAgICAgICAgdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uID0gVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uLmZyb21TdWJzdGl0dXRpb25Ob2RlKHN1YnN0aXR1dGlvbk5vZGUpLFxuICAgICAgICAgICAgbG9jYWxDb250ZXh0ID0gbG9jYWxDb250ZXh0QiwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uID0gdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uLCAvLy9cbiAgICAgICAgICAgIHN0YXRlbWVudE5vZGVBID0gc3Vic3RpdHV0aW9uU3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgICBzdGF0ZW1lbnRVbmlmaWVkQWdhaW5zdFN0YXRlbWVudCA9IHVuaWZ5U3RhdGVtZW50QWdhaW5zdFN0YXRlbWVudChzdGF0ZW1lbnROb2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0LCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoc3RhdGVtZW50VW5pZmllZEFnYWluc3RTdGF0ZW1lbnQpIHtcbiAgICAgICAgbWV0YXZhcmlhYmxlVW5pZmllZEFnYWluc3RTdGF0ZW1lbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzdWJzdGl0dXRpb25TdWJzdGl0dXRpb24gPSBzdWJzdGl0dXRpb24uZ2V0U3Vic3RpdHV0aW9uKCk7XG5cbiAgICAgIGlmIChzdWJzdGl0dXRpb25TdWJzdGl0dXRpb24gIT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZUEgPSBzdGF0ZW1lbnROb2RlQjsgLy8vXG5cbiAgICAgICAgc3RhdGVtZW50Tm9kZUIgPSBzdWJzdGl0dXRpb25TdGF0ZW1lbnROb2RlOyAvLy9cblxuICAgICAgICBjb25zdCBsb2NhbENvbnRleHQgPSBsb2NhbENvbnRleHRCLCAgLy8vXG4gICAgICAgICAgICAgIHN1YnN0aXR1dGlvbiA9IHN1YnN0aXR1dGlvblN1YnN0aXR1dGlvbixcbiAgICAgICAgICAgICAgc3RhdGVtZW50VW5pZmllZEFnYWluc3RTdGF0ZW1lbnQgPSB1bmlmeVN0YXRlbWVudEFnYWluc3RTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZUEsIHN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb24sIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dCwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgICBpZiAoc3RhdGVtZW50VW5pZmllZEFnYWluc3RTdGF0ZW1lbnQpIHtcbiAgICAgICAgICBtZXRhdmFyaWFibGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHN1YnN0aXR1dGlvbk1hdGNoZXNTdGF0ZW1lbnROb2RlQiA9IHN1YnN0aXR1dGlvbi5tYXRjaFN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZUIpO1xuXG4gICAgICAgIGlmIChzdWJzdGl0dXRpb25NYXRjaGVzU3RhdGVtZW50Tm9kZUIpIHtcbiAgICAgICAgICBtZXRhdmFyaWFibGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlQSA9IGxvY2FsQ29udGV4dEEuZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlQSk7XG5cbiAgICBpZiAobWV0YXZhcmlhYmxlQSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgbWV0YXZhcmlhYmxlQiA9IG1ldGF2YXJpYWJsZUZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGVCLCBsb2NhbENvbnRleHRCKTtcblxuICAgICAgaWYgKG1ldGF2YXJpYWJsZUEgIT09IG1ldGF2YXJpYWJsZUIpIHtcbiAgICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVCLCAvLy9cbiAgICAgICAgICAgICAgc3Vic3RpdHV0aW9uTm9kZSA9IHN1YnN0aXR1dGlvbk5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uLmZyb21NZXRhdmFyaWFibGVOb2RlU3RhdGVtZW50Tm9kZUFuZFN1YnN0aXR1dGlvbk5vZGUobWV0YXZhcmlhYmxlTm9kZSwgc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9uTm9kZSksXG4gICAgICAgICAgICAgIHN1YnN0aXR1dGlvbiA9IHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbjsgIC8vL1xuXG4gICAgICAgIHN1YnN0aXR1dGlvbnMuYWRkU3Vic3RpdHV0aW9uKHN1YnN0aXR1dGlvbiwgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0Qik7XG4gICAgICB9XG5cbiAgICAgIG1ldGF2YXJpYWJsZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50ID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YXZhcmlhYmxlVW5pZmllZEFnYWluc3RTdGF0ZW1lbnQ7XG59XG5cbmZ1bmN0aW9uIG1ldGF2YXJpYWJsZUZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgbWV0YXZhcmlhYmxlID0gbnVsbDtcblxuICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpXG5cbiAgaWYgKG1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICBtZXRhdmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhdmFyaWFibGU7XG59XG4iXSwibmFtZXMiOlsidW5pZnlNZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZUEiLCJzdGF0ZW1lbnROb2RlQiIsInN1YnN0aXR1dGlvbk5vZGVBIiwic3Vic3RpdHV0aW9ucyIsImxvY2FsQ29udGV4dEEiLCJsb2NhbENvbnRleHRCIiwibWV0YXZhcmlhYmxlVW5pZmllZEFnYWluc3RTdGF0ZW1lbnQiLCJzdWJzdGl0dXRpb24iLCJmaW5kU3Vic3RpdHV0aW9uIiwic3Vic3RpdHV0aW9uTWF0Y2hlc01ldGF2YXJpYWJsZU5vZGVBIiwibWF0Y2hNZXRhdmFyaWFibGVOb2RlIiwic3Vic3RpdHV0aW9uU3RhdGVtZW50Tm9kZSIsImdldFN0YXRlbWVudE5vZGUiLCJzdWJzdGl0dXRpb25Ob2RlIiwidGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiZnJvbVN1YnN0aXR1dGlvbk5vZGUiLCJsb2NhbENvbnRleHQiLCJzdGF0ZW1lbnROb2RlQSIsInN0YXRlbWVudFVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50IiwidW5pZnlTdGF0ZW1lbnRBZ2FpbnN0U3RhdGVtZW50Iiwic3Vic3RpdHV0aW9uU3Vic3RpdHV0aW9uIiwiZ2V0U3Vic3RpdHV0aW9uIiwic3Vic3RpdHV0aW9uTWF0Y2hlc1N0YXRlbWVudE5vZGVCIiwibWF0Y2hTdGF0ZW1lbnROb2RlIiwibWV0YXZhcmlhYmxlQSIsImZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVCIiwibWV0YXZhcmlhYmxlRnJvbVN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnROb2RlIiwibWV0YXZhcmlhYmxlTm9kZSIsInN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsIlN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiIsImZyb21NZXRhdmFyaWFibGVOb2RlU3RhdGVtZW50Tm9kZUFuZFN1YnN0aXR1dGlvbk5vZGUiLCJhZGRTdWJzdGl0dXRpb24iLCJtZXRhdmFyaWFibGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7c0VBUmdCO2dGQUNHOytFQUNNO3FCQUV2Qjs7Ozs7O0FBRTFCLElBQU1DLHdCQUF3QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUV6QixTQUFTRixrQ0FBa0NHLGlCQUFpQixFQUFFQyxjQUFjLEVBQUVDLGlCQUFpQixFQUFFQyxhQUFhLEVBQUVDLGFBQWEsRUFBRUMsYUFBYTtJQUN6SixJQUFJQyxzQ0FBc0M7SUFFMUMsSUFBTUMsZUFBZUosY0FBY0ssZ0JBQWdCLENBQUMsU0FBQ0Q7UUFDbkQsSUFBTUUsdUNBQXVDRixhQUFhRyxxQkFBcUIsQ0FBQ1Y7UUFFaEYsSUFBSVMsc0NBQXNDO1lBQ3hDLE9BQU87UUFDVDtJQUNGLE1BQU07SUFFTixJQUFJRixpQkFBaUIsTUFBTTtRQUN6QixJQUFNSSw0QkFBNEJKLGFBQWFLLGdCQUFnQjtRQUUvRCxJQUFJVixzQkFBc0IsTUFBTTtZQUM5QixJQUFNVyxtQkFBbUJYLG1CQUNuQlksOEJBQThCQyx3QkFBMkIsQ0FBQ0Msb0JBQW9CLENBQUNILG1CQUMvRUksZUFBZVosZUFDZkUsZ0JBQWVPLDZCQUNmSSxpQkFBaUJQLDJCQUNqQlEsbUNBQW1DQyxJQUFBQSxrQ0FBOEIsRUFBQ0YsZ0JBQWdCakIsZ0JBQWdCTSxlQUFjSixlQUFlYyxjQUFjQTtZQUVuSixJQUFJRSxrQ0FBa0M7Z0JBQ3BDYixzQ0FBc0M7WUFDeEM7UUFDRixPQUFPO1lBQ0wsSUFBTWUsMkJBQTJCZCxhQUFhZSxlQUFlO1lBRTdELElBQUlELDZCQUE2QixNQUFNO2dCQUNyQyxJQUFNSCxrQkFBaUJqQixnQkFBZ0IsR0FBRztnQkFFMUNBLGlCQUFpQlUsMkJBQTJCLEdBQUc7Z0JBRS9DLElBQU1NLGdCQUFlWixlQUNmRSxnQkFBZWMsMEJBQ2ZGLG9DQUFtQ0MsSUFBQUEsa0NBQThCLEVBQUNGLGlCQUFnQmpCLGdCQUFnQk0sZUFBY0osZUFBZWMsZUFBY0E7Z0JBRW5KLElBQUlFLG1DQUFrQztvQkFDcENiLHNDQUFzQztnQkFDeEM7WUFDRixPQUFPO2dCQUNMLElBQU1pQixvQ0FBb0NoQixhQUFhaUIsa0JBQWtCLENBQUN2QjtnQkFFMUUsSUFBSXNCLG1DQUFtQztvQkFDckNqQixzQ0FBc0M7Z0JBQ3hDO1lBQ0Y7UUFDRjtJQUNGLE9BQU87UUFDTCxJQUFNbUIsZ0JBQWdCckIsY0FBY3NCLGtDQUFrQyxDQUFDMUI7UUFFdkUsSUFBSXlCLGtCQUFrQixNQUFNO1lBQzFCLElBQU1FLGdCQUFnQkMsOEJBQThCM0IsZ0JBQWdCSTtZQUVwRSxJQUFJb0Isa0JBQWtCRSxlQUFlO2dCQUNuQyxJQUFNRSxnQkFBZ0I1QixnQkFDaEJZLG9CQUFtQlgsbUJBQ25CNEIsbUJBQW1COUIsbUJBQ25CK0IsdUNBQXVDQyxpQ0FBb0MsQ0FBQ0Msb0RBQW9ELENBQUNILGtCQUFrQkQsZUFBZWhCLG9CQUNsS04sZ0JBQWV3QixzQ0FBdUMsR0FBRztnQkFFL0Q1QixjQUFjK0IsZUFBZSxDQUFDM0IsZUFBY0gsZUFBZUM7WUFDN0Q7WUFFQUMsc0NBQXNDO1FBQ3hDO0lBQ0Y7SUFFQSxPQUFPQTtBQUNUO0FBRUEsU0FBU3NCLDhCQUE4QkMsYUFBYSxFQUFFWixZQUFZO0lBQ2hFLElBQUlrQixlQUFlO0lBRW5CLElBQU1MLG1CQUFtQmhDLHNCQUFzQitCO0lBRS9DLElBQUlDLHFCQUFxQixNQUFNO1FBQzdCSyxlQUFlbEIsYUFBYVMsa0NBQWtDLENBQUNJO0lBQ2pFO0lBRUEsT0FBT0s7QUFDVCJ9
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return unifyPremiseAgainstProofStep;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _unify = require("../utilities/unify");
|
|
12
|
+
function unifyPremiseAgainstProofStep(premiseA, proofStepB, substitutions, localContextA, localContextB) {
|
|
13
|
+
var premiseUnified = false;
|
|
14
|
+
var premiseAStatementNode = premiseA.getStatementNode();
|
|
15
|
+
if (premiseAStatementNode !== null) {
|
|
16
|
+
var proofStepBSubproofNode = proofStepB.getSubproofNode(), proofStepBStatementNode = proofStepB.getStatementNode(), subproofNodeB = proofStepBSubproofNode, statementNodeB = proofStepBStatementNode, statementNodeA = premiseAStatementNode, statementStringA = localContextA.nodeAsString(statementNodeA);
|
|
17
|
+
substitutions.snapshot();
|
|
18
|
+
if (subproofNodeB !== null) {
|
|
19
|
+
var subproofStringB = (0, _unify.subproofNodeAsSubproofString)(subproofNodeB, localContextB);
|
|
20
|
+
localContextB.trace("Unifying the '".concat(subproofStringB, "' subproof against the premise's '").concat(statementStringA, "' statement..."), subproofNodeB);
|
|
21
|
+
var subproofUnified = premiseA.unifySubproof(subproofNodeB, substitutions, localContextA, localContextB);
|
|
22
|
+
if (subproofUnified) {
|
|
23
|
+
localContextB.debug("...unified the '".concat(subproofStringB, "' subproof against the premise's '").concat(statementStringA, "' statement."), subproofNodeB);
|
|
24
|
+
premiseUnified = true;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
if (statementNodeB !== null) {
|
|
28
|
+
var statementStringB = localContextB.nodeAsString(statementNodeB);
|
|
29
|
+
localContextB.trace("Unifying the '".concat(statementStringB, "' statement against the premise's '").concat(statementStringA, "' statement..."), statementNodeB);
|
|
30
|
+
var statementUnified = premiseA.unifyStatement(statementNodeB, substitutions, localContextA, localContextB);
|
|
31
|
+
if (statementUnified) {
|
|
32
|
+
localContextB.debug("...unified the '".concat(statementStringB, "' statement against the premise's '").concat(statementStringA, "' statement."), statementNodeB);
|
|
33
|
+
premiseUnified = true;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
premiseUnified ? substitutions.continue() : substitutions.rollback(localContextA, localContextB);
|
|
37
|
+
}
|
|
38
|
+
return premiseUnified;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmeS9wcmVtaXNlQWdhaW5zdFByb29mU3RlcC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgc3VicHJvb2ZOb2RlQXNTdWJwcm9vZlN0cmluZyB9IGZyb20gXCIuLi91dGlsaXRpZXMvdW5pZnlcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdW5pZnlQcmVtaXNlQWdhaW5zdFByb29mU3RlcChwcmVtaXNlQSwgcHJvb2ZTdGVwQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0Qikge1xuICBsZXQgcHJlbWlzZVVuaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBwcmVtaXNlQVN0YXRlbWVudE5vZGUgPSBwcmVtaXNlQS5nZXRTdGF0ZW1lbnROb2RlKCk7XG5cbiAgaWYgKHByZW1pc2VBU3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHByb29mU3RlcEJTdWJwcm9vZk5vZGUgPSBwcm9vZlN0ZXBCLmdldFN1YnByb29mTm9kZSgpLFxuICAgICAgICAgIHByb29mU3RlcEJTdGF0ZW1lbnROb2RlID0gcHJvb2ZTdGVwQi5nZXRTdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgc3VicHJvb2ZOb2RlQiA9IHByb29mU3RlcEJTdWJwcm9vZk5vZGUsIC8vL1xuICAgICAgICAgIHN0YXRlbWVudE5vZGVCID0gcHJvb2ZTdGVwQlN0YXRlbWVudE5vZGUsIC8vL1xuICAgICAgICAgIHN0YXRlbWVudE5vZGVBID0gcHJlbWlzZUFTdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICBzdGF0ZW1lbnRTdHJpbmdBID0gbG9jYWxDb250ZXh0QS5ub2RlQXNTdHJpbmcoc3RhdGVtZW50Tm9kZUEpXG5cbiAgICBzdWJzdGl0dXRpb25zLnNuYXBzaG90KCk7XG5cbiAgICBpZiAoc3VicHJvb2ZOb2RlQiAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3VicHJvb2ZTdHJpbmdCID0gc3VicHJvb2ZOb2RlQXNTdWJwcm9vZlN0cmluZyhzdWJwcm9vZk5vZGVCLCBsb2NhbENvbnRleHRCKTtcblxuICAgICAgbG9jYWxDb250ZXh0Qi50cmFjZShgVW5pZnlpbmcgdGhlICcke3N1YnByb29mU3RyaW5nQn0nIHN1YnByb29mIGFnYWluc3QgdGhlIHByZW1pc2UncyAnJHtzdGF0ZW1lbnRTdHJpbmdBfScgc3RhdGVtZW50Li4uYCwgc3VicHJvb2ZOb2RlQik7XG5cbiAgICAgIGNvbnN0IHN1YnByb29mVW5pZmllZCA9IHByZW1pc2VBLnVuaWZ5U3VicHJvb2Yoc3VicHJvb2ZOb2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0Qik7XG5cbiAgICAgIGlmIChzdWJwcm9vZlVuaWZpZWQpIHtcbiAgICAgICAgbG9jYWxDb250ZXh0Qi5kZWJ1ZyhgLi4udW5pZmllZCB0aGUgJyR7c3VicHJvb2ZTdHJpbmdCfScgc3VicHJvb2YgYWdhaW5zdCB0aGUgcHJlbWlzZSdzICcke3N0YXRlbWVudFN0cmluZ0F9JyBzdGF0ZW1lbnQuYCwgc3VicHJvb2ZOb2RlQik7XG5cbiAgICAgICAgcHJlbWlzZVVuaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChzdGF0ZW1lbnROb2RlQiAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50U3RyaW5nQiA9IGxvY2FsQ29udGV4dEIubm9kZUFzU3RyaW5nKHN0YXRlbWVudE5vZGVCKTtcblxuICAgICAgbG9jYWxDb250ZXh0Qi50cmFjZShgVW5pZnlpbmcgdGhlICcke3N0YXRlbWVudFN0cmluZ0J9JyBzdGF0ZW1lbnQgYWdhaW5zdCB0aGUgcHJlbWlzZSdzICcke3N0YXRlbWVudFN0cmluZ0F9JyBzdGF0ZW1lbnQuLi5gLCBzdGF0ZW1lbnROb2RlQik7XG5cbiAgICAgIGNvbnN0IHN0YXRlbWVudFVuaWZpZWQgPSBwcmVtaXNlQS51bmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0Qik7XG5cbiAgICAgIGlmIChzdGF0ZW1lbnRVbmlmaWVkKSB7XG4gICAgICAgIGxvY2FsQ29udGV4dEIuZGVidWcoYC4uLnVuaWZpZWQgdGhlICcke3N0YXRlbWVudFN0cmluZ0J9JyBzdGF0ZW1lbnQgYWdhaW5zdCB0aGUgcHJlbWlzZSdzICcke3N0YXRlbWVudFN0cmluZ0F9JyBzdGF0ZW1lbnQuYCwgc3RhdGVtZW50Tm9kZUIpO1xuXG4gICAgICAgIHByZW1pc2VVbmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcmVtaXNlVW5pZmllZCA/XG4gICAgICBzdWJzdGl0dXRpb25zLmNvbnRpbnVlKCkgOlxuICAgICAgICBzdWJzdGl0dXRpb25zLnJvbGxiYWNrKGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIpO1xuICB9XG5cbiAgcmV0dXJuIHByZW1pc2VVbmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInVuaWZ5UHJlbWlzZUFnYWluc3RQcm9vZlN0ZXAiLCJwcmVtaXNlQSIsInByb29mU3RlcEIiLCJzdWJzdGl0dXRpb25zIiwibG9jYWxDb250ZXh0QSIsImxvY2FsQ29udGV4dEIiLCJwcmVtaXNlVW5pZmllZCIsInByZW1pc2VBU3RhdGVtZW50Tm9kZSIsImdldFN0YXRlbWVudE5vZGUiLCJwcm9vZlN0ZXBCU3VicHJvb2ZOb2RlIiwiZ2V0U3VicHJvb2ZOb2RlIiwicHJvb2ZTdGVwQlN0YXRlbWVudE5vZGUiLCJzdWJwcm9vZk5vZGVCIiwic3RhdGVtZW50Tm9kZUIiLCJzdGF0ZW1lbnROb2RlQSIsInN0YXRlbWVudFN0cmluZ0EiLCJub2RlQXNTdHJpbmciLCJzbmFwc2hvdCIsInN1YnByb29mU3RyaW5nQiIsInN1YnByb29mTm9kZUFzU3VicHJvb2ZTdHJpbmciLCJ0cmFjZSIsInN1YnByb29mVW5pZmllZCIsInVuaWZ5U3VicHJvb2YiLCJkZWJ1ZyIsInN0YXRlbWVudFN0cmluZ0IiLCJzdGF0ZW1lbnRVbmlmaWVkIiwidW5pZnlTdGF0ZW1lbnQiLCJjb250aW51ZSIsInJvbGxiYWNrIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFJQTs7O2VBQXdCQTs7O3FCQUZxQjtBQUU5QixTQUFTQSw2QkFBNkJDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxhQUFhLEVBQUVDLGFBQWEsRUFBRUMsYUFBYTtJQUNwSCxJQUFJQyxpQkFBaUI7SUFFckIsSUFBTUMsd0JBQXdCTixTQUFTTyxnQkFBZ0I7SUFFdkQsSUFBSUQsMEJBQTBCLE1BQU07UUFDbEMsSUFBTUUseUJBQXlCUCxXQUFXUSxlQUFlLElBQ25EQywwQkFBMEJULFdBQVdNLGdCQUFnQixJQUNyREksZ0JBQWdCSCx3QkFDaEJJLGlCQUFpQkYseUJBQ2pCRyxpQkFBaUJQLHVCQUNqQlEsbUJBQW1CWCxjQUFjWSxZQUFZLENBQUNGO1FBRXBEWCxjQUFjYyxRQUFRO1FBRXRCLElBQUlMLGtCQUFrQixNQUFNO1lBQzFCLElBQU1NLGtCQUFrQkMsSUFBQUEsbUNBQTRCLEVBQUNQLGVBQWVQO1lBRXBFQSxjQUFjZSxLQUFLLENBQUMsQUFBQyxpQkFBb0VMLE9BQXBERyxpQkFBZ0Isc0NBQXFELE9BQWpCSCxrQkFBaUIsbUJBQWlCSDtZQUUzSCxJQUFNUyxrQkFBa0JwQixTQUFTcUIsYUFBYSxDQUFDVixlQUFlVCxlQUFlQyxlQUFlQztZQUU1RixJQUFJZ0IsaUJBQWlCO2dCQUNuQmhCLGNBQWNrQixLQUFLLENBQUMsQUFBQyxtQkFBc0VSLE9BQXBERyxpQkFBZ0Isc0NBQXFELE9BQWpCSCxrQkFBaUIsaUJBQWVIO2dCQUUzSE4saUJBQWlCO1lBQ25CO1FBQ0Y7UUFFQSxJQUFJTyxtQkFBbUIsTUFBTTtZQUMzQixJQUFNVyxtQkFBbUJuQixjQUFjVyxZQUFZLENBQUNIO1lBRXBEUixjQUFjZSxLQUFLLENBQUMsQUFBQyxpQkFBc0VMLE9BQXREUyxrQkFBaUIsdUNBQXNELE9BQWpCVCxrQkFBaUIsbUJBQWlCRjtZQUU3SCxJQUFNWSxtQkFBbUJ4QixTQUFTeUIsY0FBYyxDQUFDYixnQkFBZ0JWLGVBQWVDLGVBQWVDO1lBRS9GLElBQUlvQixrQkFBa0I7Z0JBQ3BCcEIsY0FBY2tCLEtBQUssQ0FBQyxBQUFDLG1CQUF3RVIsT0FBdERTLGtCQUFpQix1Q0FBc0QsT0FBakJULGtCQUFpQixpQkFBZUY7Z0JBRTdIUCxpQkFBaUI7WUFDbkI7UUFDRjtRQUVBQSxpQkFDRUgsY0FBY3dCLFFBQVEsS0FDcEJ4QixjQUFjeUIsUUFBUSxDQUFDeEIsZUFBZUM7SUFDNUM7SUFFQSxPQUFPQztBQUNUIn0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return unifyPremisesAgainstProofSteps;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _local = /*#__PURE__*/ _interop_require_default(require("../context/local"));
|
|
12
|
+
var _premiseAgainstProofStep = /*#__PURE__*/ _interop_require_default(require("../unify/premiseAgainstProofStep"));
|
|
13
|
+
var _array = require("../utilities/array");
|
|
14
|
+
function _interop_require_default(obj) {
|
|
15
|
+
return obj && obj.__esModule ? obj : {
|
|
16
|
+
default: obj
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
function unifyPremisesAgainstProofSteps(premisesA, proofStepsB, substitutions, fileContextA, localContextB) {
|
|
20
|
+
premisesA = (0, _array.reverse)(premisesA); ///
|
|
21
|
+
proofStepsB = (0, _array.reverse)(proofStepsB); ///
|
|
22
|
+
var premisesUnified = (0, _array.correlate)(premisesA, proofStepsB, function(premiseA, proofStepB) {
|
|
23
|
+
var localContextA = _local.default.fromFileContext(fileContextA), premiseUnified = (0, _premiseAgainstProofStep.default)(premiseA, proofStepB, substitutions, localContextA, localContextB);
|
|
24
|
+
if (premiseUnified) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
return premisesUnified;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmeS9wcmVtaXNlc0FnYWluc3RQcm9vZlN0ZXBzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTG9jYWxDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L2xvY2FsXCI7XG5pbXBvcnQgdW5pZnlQcmVtaXNlQWdhaW5zdFByb29mU3RlcCBmcm9tIFwiLi4vdW5pZnkvcHJlbWlzZUFnYWluc3RQcm9vZlN0ZXBcIjtcblxuaW1wb3J0IHsgcmV2ZXJzZSwgY29ycmVsYXRlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1bmlmeVByZW1pc2VzQWdhaW5zdFByb29mU3RlcHMocHJlbWlzZXNBLCBwcm9vZlN0ZXBzQiwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHRBLCBsb2NhbENvbnRleHRCKSB7XG4gIHByZW1pc2VzQSA9IHJldmVyc2UocHJlbWlzZXNBKTsgLy8vXG5cbiAgcHJvb2ZTdGVwc0IgPSByZXZlcnNlKHByb29mU3RlcHNCKTsgLy8vXG5cbiAgY29uc3QgcHJlbWlzZXNVbmlmaWVkID0gY29ycmVsYXRlKHByZW1pc2VzQSwgcHJvb2ZTdGVwc0IsIChwcmVtaXNlQSwgcHJvb2ZTdGVwQikgPT4ge1xuICAgIGNvbnN0IGxvY2FsQ29udGV4dEEgPSBMb2NhbENvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0QSksXG4gICAgICAgICAgcHJlbWlzZVVuaWZpZWQgPSB1bmlmeVByZW1pc2VBZ2FpbnN0UHJvb2ZTdGVwKHByZW1pc2VBLCBwcm9vZlN0ZXBCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCKTtcblxuICAgIGlmIChwcmVtaXNlVW5pZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gcHJlbWlzZXNVbmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInVuaWZ5UHJlbWlzZXNBZ2FpbnN0UHJvb2ZTdGVwcyIsInByZW1pc2VzQSIsInByb29mU3RlcHNCIiwic3Vic3RpdHV0aW9ucyIsImZpbGVDb250ZXh0QSIsImxvY2FsQ29udGV4dEIiLCJyZXZlcnNlIiwicHJlbWlzZXNVbmlmaWVkIiwiY29ycmVsYXRlIiwicHJlbWlzZUEiLCJwcm9vZlN0ZXBCIiwibG9jYWxDb250ZXh0QSIsIkxvY2FsQ29udGV4dCIsImZyb21GaWxlQ29udGV4dCIsInByZW1pc2VVbmlmaWVkIiwidW5pZnlQcmVtaXNlQWdhaW5zdFByb29mU3RlcCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUF3QkE7Ozs0REFMQzs4RUFDZ0I7cUJBRU47Ozs7OztBQUVwQixTQUFTQSwrQkFBK0JDLFNBQVMsRUFBRUMsV0FBVyxFQUFFQyxhQUFhLEVBQUVDLFlBQVksRUFBRUMsYUFBYTtJQUN2SEosWUFBWUssSUFBQUEsY0FBTyxFQUFDTCxZQUFZLEdBQUc7SUFFbkNDLGNBQWNJLElBQUFBLGNBQU8sRUFBQ0osY0FBYyxHQUFHO0lBRXZDLElBQU1LLGtCQUFrQkMsSUFBQUEsZ0JBQVMsRUFBQ1AsV0FBV0MsYUFBYSxTQUFDTyxVQUFVQztRQUNuRSxJQUFNQyxnQkFBZ0JDLGNBQVksQ0FBQ0MsZUFBZSxDQUFDVCxlQUM3Q1UsaUJBQWlCQyxJQUFBQSxnQ0FBNEIsRUFBQ04sVUFBVUMsWUFBWVAsZUFBZVEsZUFBZU47UUFFeEcsSUFBSVMsZ0JBQWdCO1lBQ2xCLE9BQU87UUFDVDtJQUNGO0lBRUEsT0FBT1A7QUFDVCJ9
|
|
@@ -17,18 +17,14 @@ function _interop_require_default(obj) {
|
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
var metaTypeTerminalNodeQuery = (0, _query.nodeQuery)("/metaType/@meta-type!");
|
|
20
|
-
function unifyStatementAgainstMetaType(
|
|
20
|
+
function unifyStatementAgainstMetaType(statementNode, metaTypeNode, localContext) {
|
|
21
21
|
var statementVerifiedAgainstMetaType = false;
|
|
22
|
-
var
|
|
22
|
+
var metaTypeTerminalNode = metaTypeTerminalNodeQuery(metaTypeNode), content = metaTypeTerminalNode.getContent();
|
|
23
23
|
if (content === _metaTypeNames.STATEMENT_META_TYPE_NAME) {
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
if (statementVerified) {
|
|
27
|
-
unifiedAhead = unifyAhead();
|
|
28
|
-
}
|
|
29
|
-
statementVerifiedAgainstMetaType = unifiedAhead; ///
|
|
24
|
+
var verifyStatement = _shim.default.verifyStatement, derived = false, assignments = [], statementVerified = verifyStatement(statementNode, assignments, derived, localContext);
|
|
25
|
+
statementVerifiedAgainstMetaType = statementVerified;
|
|
30
26
|
}
|
|
31
27
|
return statementVerifiedAgainstMetaType;
|
|
32
28
|
}
|
|
33
29
|
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmeS9zdGF0ZW1lbnRBZ2FpbnN0TWV0YVR5cGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBzaGltIGZyb20gXCIuLi9zaGltXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IFNUQVRFTUVOVF9NRVRBX1RZUEVfTkFNRSB9IGZyb20gXCIuLi9tZXRhVHlwZU5hbWVzXCI7XG5cbmNvbnN0IG1ldGFUeXBlVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YVR5cGUvQG1ldGEtdHlwZSFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVuaWZ5U3RhdGVtZW50QWdhaW5zdE1ldGFUeXBlKHN0YXRlbWVudE5vZGUsIG1ldGFUeXBlTm9kZSwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RNZXRhVHlwZSA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFUeXBlVGVybWluYWxOb2RlID0gbWV0YVR5cGVUZXJtaW5hbE5vZGVRdWVyeShtZXRhVHlwZU5vZGUpLFxuICAgICAgICBjb250ZW50ID0gbWV0YVR5cGVUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpO1xuXG4gIGlmIChjb250ZW50ID09PSBTVEFURU1FTlRfTUVUQV9UWVBFX05BTUUpIHtcbiAgICBjb25zdCB7IHZlcmlmeVN0YXRlbWVudCB9ID0gc2hpbSxcbiAgICAgICAgICBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgIHN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdE1ldGFUeXBlID0gc3RhdGVtZW50VmVyaWZpZWQ7XG4gIH1cblxuICByZXR1cm4gc3RhdGVtZW50VmVyaWZpZWRBZ2FpbnN0TWV0YVR5cGU7XG59XG4iXSwibmFtZXMiOlsidW5pZnlTdGF0ZW1lbnRBZ2FpbnN0TWV0YVR5cGUiLCJtZXRhVHlwZVRlcm1pbmFsTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZSIsIm1ldGFUeXBlTm9kZSIsImxvY2FsQ29udGV4dCIsInN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdE1ldGFUeXBlIiwibWV0YVR5cGVUZXJtaW5hbE5vZGUiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsIlNUQVRFTUVOVF9NRVRBX1RZUEVfTkFNRSIsInZlcmlmeVN0YXRlbWVudCIsInNoaW0iLCJkZXJpdmVkIiwiYXNzaWdubWVudHMiLCJzdGF0ZW1lbnRWZXJpZmllZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBU0E7OztlQUF3QkE7OzsyREFQUDtxQkFFUzs2QkFDZTs7Ozs7O0FBRXpDLElBQU1DLDRCQUE0QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUU3QixTQUFTRiw4QkFBOEJHLGFBQWEsRUFBRUMsWUFBWSxFQUFFQyxZQUFZO0lBQzdGLElBQUlDLG1DQUFtQztJQUV2QyxJQUFNQyx1QkFBdUJOLDBCQUEwQkcsZUFDakRJLFVBQVVELHFCQUFxQkUsVUFBVTtJQUUvQyxJQUFJRCxZQUFZRSx1Q0FBd0IsRUFBRTtRQUN4QyxJQUFNLEFBQUVDLGtCQUFvQkMsYUFBSSxDQUF4QkQsaUJBQ0ZFLFVBQVUsT0FDVkMsY0FBYyxFQUFFLEVBQ2hCQyxvQkFBb0JKLGdCQUFnQlIsZUFBZVcsYUFBYUQsU0FBU1I7UUFFL0VDLG1DQUFtQ1M7SUFDckM7SUFFQSxPQUFPVDtBQUNUIn0=
|