occam-verify-cli 0.0.677 → 0.0.679
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/bin/action/verify.js +14 -4
- package/lib/conclusion.js +10 -5
- package/lib/consequent.js +8 -3
- package/lib/context/file.js +74 -4
- package/lib/context/release.js +7 -2
- package/lib/equality.js +16 -16
- package/lib/premise.js +12 -7
- package/lib/supposition.js +9 -4
- package/lib/type.js +3 -8
- package/lib/utilities/string.js +26 -13
- package/lib/verifier/node/metastatement.js +173 -0
- package/lib/verifier/node/statementAsCombinator.js +186 -0
- package/lib/verifier/node/termAsConstructor.js +224 -0
- package/lib/verifier/node.js +158 -0
- package/lib/verifier/{metastatementForMetavariable → nodes/metastatementForMetavariable}/conclusion.js +13 -12
- package/lib/verifier/{metastatementForMetavariable → nodes/metastatementForMetavariable}/premise.js +13 -12
- package/lib/verifier/nodes/metastatementForMetavariable.js +198 -0
- package/lib/verifier/nodes/statement.js +199 -0
- package/lib/verifier/{statementForMetavariable → nodes/statementForMetavariable}/conclusion.js +13 -12
- package/lib/verifier/{statementForMetavariable → nodes/statementForMetavariable}/premise.js +13 -12
- package/lib/verifier/nodes/statementForMetavariable.js +203 -0
- package/lib/verifier/nodes/term.js +212 -0
- package/lib/verifier/{termForVariable/supposition.js → nodes/termForVariable/consequent.js} +13 -12
- package/lib/verifier/{termForVariable/consequent.js → nodes/termForVariable/supposition.js} +13 -12
- package/lib/verifier/nodes/termForVariable.js +209 -0
- package/lib/verifier/nodes.js +175 -0
- package/lib/verify/assertion/type.js +20 -10
- package/lib/verify/axiom.js +3 -3
- package/lib/verify/conclusion.js +3 -3
- package/lib/verify/conjecture.js +3 -3
- package/lib/verify/consequent.js +3 -3
- package/lib/verify/declaration/combinator.js +7 -2
- package/lib/verify/declaration/constructor.js +8 -2
- package/lib/verify/declaration/metavariable.js +7 -2
- package/lib/verify/declaration/type.js +7 -2
- package/lib/verify/declaration/variable.js +8 -2
- package/lib/verify/file.js +3 -3
- package/lib/verify/label.js +9 -4
- package/lib/verify/lemma.js +3 -3
- package/lib/verify/metastatement/qualified.js +5 -6
- package/lib/verify/metastatement/unqualified.js +9 -7
- package/lib/verify/metastatement.js +34 -157
- package/lib/verify/metavariable.js +6 -4
- package/lib/verify/premise.js +3 -3
- package/lib/verify/release.js +3 -3
- package/lib/verify/rule.js +3 -3
- package/lib/verify/statement/qualified.js +5 -6
- package/lib/verify/statement/unqualified.js +9 -7
- package/lib/verify/statement.js +112 -317
- package/lib/verify/statementAsCombinator.js +8 -82
- package/lib/verify/supposition.js +3 -3
- package/lib/verify/term.js +69 -213
- package/lib/verify/termAsConstructor.js +15 -89
- package/lib/verify/theorem.js +3 -3
- package/lib/verify/type.js +7 -5
- package/lib/verify/typeInference.js +5 -5
- package/lib/verify/variable.js +7 -5
- package/package.json +5 -5
- package/src/conclusion.js +5 -4
- package/src/consequent.js +3 -2
- package/src/context/file.js +11 -4
- package/src/context/release.js +9 -2
- package/src/equality.js +10 -10
- package/src/premise.js +7 -6
- package/src/supposition.js +4 -3
- package/src/type.js +3 -8
- package/src/utilities/string.js +34 -23
- package/src/verifier/node/metastatement.js +57 -0
- package/src/verifier/node/statementAsCombinator.js +80 -0
- package/src/verifier/node/termAsConstructor.js +124 -0
- package/src/verifier/node.js +85 -0
- package/src/verifier/nodes/metastatementForMetavariable/conclusion.js +11 -0
- package/src/verifier/nodes/metastatementForMetavariable/premise.js +11 -0
- package/src/verifier/{metastatementForMetavariable.js → nodes/metastatementForMetavariable.js} +6 -6
- package/src/verifier/nodes/statement.js +98 -0
- package/src/verifier/nodes/statementForMetavariable/conclusion.js +11 -0
- package/src/verifier/nodes/statementForMetavariable/premise.js +11 -0
- package/src/verifier/{statementForMetavariable.js → nodes/statementForMetavariable.js} +10 -10
- package/src/verifier/nodes/term.js +111 -0
- package/src/verifier/nodes/termForVariable/consequent.js +11 -0
- package/src/verifier/nodes/termForVariable/supposition.js +11 -0
- package/src/verifier/{termForVariable.js → nodes/termForVariable.js} +9 -9
- package/src/verifier/nodes.js +111 -0
- package/src/verify/assertion/type.js +25 -9
- package/src/verify/axiom.js +2 -2
- package/src/verify/conclusion.js +2 -2
- package/src/verify/conjecture.js +2 -2
- package/src/verify/consequent.js +2 -2
- package/src/verify/declaration/combinator.js +9 -1
- package/src/verify/declaration/constructor.js +15 -1
- package/src/verify/declaration/metavariable.js +9 -1
- package/src/verify/declaration/type.js +14 -1
- package/src/verify/declaration/variable.js +15 -1
- package/src/verify/file.js +2 -2
- package/src/verify/label.js +10 -2
- package/src/verify/lemma.js +4 -4
- package/src/verify/metastatement/qualified.js +4 -6
- package/src/verify/metastatement/unqualified.js +9 -7
- package/src/verify/metastatement.js +32 -57
- package/src/verify/metavariable.js +6 -3
- package/src/verify/premise.js +2 -2
- package/src/verify/release.js +2 -2
- package/src/verify/rule.js +2 -2
- package/src/verify/statement/qualified.js +4 -6
- package/src/verify/statement/unqualified.js +9 -7
- package/src/verify/statement.js +159 -283
- package/src/verify/statementAsCombinator.js +9 -129
- package/src/verify/supposition.js +2 -2
- package/src/verify/term.js +94 -159
- package/src/verify/termAsConstructor.js +20 -135
- package/src/verify/theorem.js +2 -2
- package/src/verify/type.js +7 -4
- package/src/verify/typeInference.js +4 -4
- package/src/verify/variable.js +7 -4
- package/lib/verifier/metastatementForMetavariable.js +0 -198
- package/lib/verifier/statementForMetavariable.js +0 -203
- package/lib/verifier/termForVariable.js +0 -209
- package/lib/verifier.js +0 -138
- package/src/verifier/metastatementForMetavariable/conclusion.js +0 -9
- package/src/verifier/metastatementForMetavariable/premise.js +0 -9
- package/src/verifier/statementForMetavariable/conclusion.js +0 -9
- package/src/verifier/statementForMetavariable/premise.js +0 -9
- package/src/verifier/termForVariable/consequent.js +0 -9
- package/src/verifier/termForVariable/supposition.js +0 -9
- package/src/verifier.js +0 -74
|
@@ -1,209 +0,0 @@
|
|
|
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 TermForVariableVerifier;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _verifier = /*#__PURE__*/ _interop_require_default(require("../verifier"));
|
|
12
|
-
var _term = /*#__PURE__*/ _interop_require_default(require("../verify/term"));
|
|
13
|
-
var _termForVariable = /*#__PURE__*/ _interop_require_default(require("../substitution/termForVariable"));
|
|
14
|
-
var _array = require("../utilities/array");
|
|
15
|
-
var _query = require("../utilities/query");
|
|
16
|
-
var _ruleNames = require("../ruleNames");
|
|
17
|
-
function _assert_this_initialized(self) {
|
|
18
|
-
if (self === void 0) {
|
|
19
|
-
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
20
|
-
}
|
|
21
|
-
return self;
|
|
22
|
-
}
|
|
23
|
-
function _class_call_check(instance, Constructor) {
|
|
24
|
-
if (!(instance instanceof Constructor)) {
|
|
25
|
-
throw new TypeError("Cannot call a class as a function");
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
function _defineProperties(target, props) {
|
|
29
|
-
for(var i = 0; i < props.length; i++){
|
|
30
|
-
var descriptor = props[i];
|
|
31
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
32
|
-
descriptor.configurable = true;
|
|
33
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
34
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
38
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
39
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
40
|
-
return Constructor;
|
|
41
|
-
}
|
|
42
|
-
function _get(target, property, receiver) {
|
|
43
|
-
if (typeof Reflect !== "undefined" && Reflect.get) {
|
|
44
|
-
_get = Reflect.get;
|
|
45
|
-
} else {
|
|
46
|
-
_get = function get(target, property, receiver) {
|
|
47
|
-
var base = _super_prop_base(target, property);
|
|
48
|
-
if (!base) return;
|
|
49
|
-
var desc = Object.getOwnPropertyDescriptor(base, property);
|
|
50
|
-
if (desc.get) {
|
|
51
|
-
return desc.get.call(receiver || target);
|
|
52
|
-
}
|
|
53
|
-
return desc.value;
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
return _get(target, property, receiver || target);
|
|
57
|
-
}
|
|
58
|
-
function _get_prototype_of(o) {
|
|
59
|
-
_get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
|
|
60
|
-
return o.__proto__ || Object.getPrototypeOf(o);
|
|
61
|
-
};
|
|
62
|
-
return _get_prototype_of(o);
|
|
63
|
-
}
|
|
64
|
-
function _inherits(subClass, superClass) {
|
|
65
|
-
if (typeof superClass !== "function" && superClass !== null) {
|
|
66
|
-
throw new TypeError("Super expression must either be null or a function");
|
|
67
|
-
}
|
|
68
|
-
subClass.prototype = Object.create(superClass && superClass.prototype, {
|
|
69
|
-
constructor: {
|
|
70
|
-
value: subClass,
|
|
71
|
-
writable: true,
|
|
72
|
-
configurable: true
|
|
73
|
-
}
|
|
74
|
-
});
|
|
75
|
-
if (superClass) _set_prototype_of(subClass, superClass);
|
|
76
|
-
}
|
|
77
|
-
function _interop_require_default(obj) {
|
|
78
|
-
return obj && obj.__esModule ? obj : {
|
|
79
|
-
default: obj
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
function _possible_constructor_return(self, call) {
|
|
83
|
-
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
84
|
-
return call;
|
|
85
|
-
}
|
|
86
|
-
return _assert_this_initialized(self);
|
|
87
|
-
}
|
|
88
|
-
function _set_prototype_of(o, p) {
|
|
89
|
-
_set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
|
|
90
|
-
o.__proto__ = p;
|
|
91
|
-
return o;
|
|
92
|
-
};
|
|
93
|
-
return _set_prototype_of(o, p);
|
|
94
|
-
}
|
|
95
|
-
function _super_prop_base(object, property) {
|
|
96
|
-
while(!Object.prototype.hasOwnProperty.call(object, property)){
|
|
97
|
-
object = _get_prototype_of(object);
|
|
98
|
-
if (object === null) break;
|
|
99
|
-
}
|
|
100
|
-
return object;
|
|
101
|
-
}
|
|
102
|
-
function _type_of(obj) {
|
|
103
|
-
"@swc/helpers - typeof";
|
|
104
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
105
|
-
}
|
|
106
|
-
function _is_native_reflect_construct() {
|
|
107
|
-
if (typeof Reflect === "undefined" || !Reflect.construct) return false;
|
|
108
|
-
if (Reflect.construct.sham) return false;
|
|
109
|
-
if (typeof Proxy === "function") return true;
|
|
110
|
-
try {
|
|
111
|
-
Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
|
|
112
|
-
return true;
|
|
113
|
-
} catch (e) {
|
|
114
|
-
return false;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
function _create_super(Derived) {
|
|
118
|
-
var hasNativeReflectConstruct = _is_native_reflect_construct();
|
|
119
|
-
return function _createSuperInternal() {
|
|
120
|
-
var Super = _get_prototype_of(Derived), result;
|
|
121
|
-
if (hasNativeReflectConstruct) {
|
|
122
|
-
var NewTarget = _get_prototype_of(this).constructor;
|
|
123
|
-
result = Reflect.construct(Super, arguments, NewTarget);
|
|
124
|
-
} else {
|
|
125
|
-
result = Super.apply(this, arguments);
|
|
126
|
-
}
|
|
127
|
-
return _possible_constructor_return(this, result);
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
var variableNodeQuery = (0, _query.nodeQuery)("/term/variable!");
|
|
131
|
-
var TermForVariableVerifier = /*#__PURE__*/ function(Verifier) {
|
|
132
|
-
_inherits(TermForVariableVerifier, Verifier);
|
|
133
|
-
var _super = _create_super(TermForVariableVerifier);
|
|
134
|
-
function TermForVariableVerifier() {
|
|
135
|
-
_class_call_check(this, TermForVariableVerifier);
|
|
136
|
-
return _super.apply(this, arguments);
|
|
137
|
-
}
|
|
138
|
-
_create_class(TermForVariableVerifier, [
|
|
139
|
-
{
|
|
140
|
-
key: "verifyNonTerminalNode",
|
|
141
|
-
value: function verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, substitutions, proofContextA, proofContextB) {
|
|
142
|
-
var nonTerminalNodeVerified = false;
|
|
143
|
-
var nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName();
|
|
144
|
-
if (nonTerminalNodeBRuleName === nonTerminalNodeARuleName) {
|
|
145
|
-
var nonTerminalNodeARuleNameTermRuleName = nonTerminalNodeARuleName === _ruleNames.TERM_RULE_NAME, nonTerminalNodeBRuleNameTermRuleName = nonTerminalNodeBRuleName === _ruleNames.TERM_RULE_NAME;
|
|
146
|
-
if (nonTerminalNodeARuleNameTermRuleName && nonTerminalNodeBRuleNameTermRuleName) {
|
|
147
|
-
var termNodeA = nonTerminalNodeA, termNodeB = nonTerminalNodeB, termNodeVerified = this.verifyTermNode(termNodeA, termNodeB, substitutions, proofContextA, proofContextB);
|
|
148
|
-
if (termNodeVerified) {
|
|
149
|
-
nonTerminalNodeVerified = true; ///
|
|
150
|
-
} else {
|
|
151
|
-
nonTerminalNodeVerified = _get(_get_prototype_of(TermForVariableVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNodeA, nonTerminalNodeB, substitutions, proofContextA, proofContextB);
|
|
152
|
-
}
|
|
153
|
-
} else {
|
|
154
|
-
nonTerminalNodeVerified = _get(_get_prototype_of(TermForVariableVerifier.prototype), "verifyNonTerminalNode", this).call(this, nonTerminalNodeA, nonTerminalNodeB, substitutions, proofContextA, proofContextB);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
return nonTerminalNodeVerified;
|
|
158
|
-
}
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
key: "verifyTermNode",
|
|
162
|
-
value: function verifyTermNode(termNodeA, termNodeB, substitutions, proofContextA, proofContextB) {
|
|
163
|
-
var termNodeVerified = false;
|
|
164
|
-
var variableNodeA = variableNodeQuery(termNodeA);
|
|
165
|
-
if (variableNodeA !== null) {
|
|
166
|
-
var variableVerified = this.verifyVariableNode(variableNodeA, termNodeB, substitutions, proofContextA, proofContextB);
|
|
167
|
-
termNodeVerified = variableVerified; ///
|
|
168
|
-
}
|
|
169
|
-
return termNodeVerified;
|
|
170
|
-
}
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
key: "verifyVariableNode",
|
|
174
|
-
value: function verifyVariableNode(variableNodeA, termNodeB, substitutions, proofContextA, proofContextB) {
|
|
175
|
-
var variableVerified;
|
|
176
|
-
var variableNameA = (0, _query.variableNameFromVariableNode)(variableNodeA), substitution = substitutions.find(function(substitution) {
|
|
177
|
-
var variableName = substitution.getVariableName();
|
|
178
|
-
if (variableName === variableNameA) {
|
|
179
|
-
return true;
|
|
180
|
-
}
|
|
181
|
-
}) || null;
|
|
182
|
-
if (substitution !== null) {
|
|
183
|
-
var termNode = termNodeB, substitutionNodesVerified = substitution.matchTermNode(termNode);
|
|
184
|
-
variableVerified = substitutionNodesVerified; ///
|
|
185
|
-
} else {
|
|
186
|
-
var createSubstitutions = this.constructor.createSubstitutions;
|
|
187
|
-
if (createSubstitutions) {
|
|
188
|
-
var variableName = variableNameA, proofContext = proofContextA, variable = proofContext.findVariableByVariableName(variableName);
|
|
189
|
-
if (variable !== null) {
|
|
190
|
-
var types = [], context = proofContextB, termNode1 = termNodeB, termVerified = (0, _term.default)(termNode1, types, context);
|
|
191
|
-
if (termVerified) {
|
|
192
|
-
var firstType = (0, _array.first)(types), termType = firstType, variableType = variable.getType(), variableTypeEqualToOrSuperTypeOfTermType = variableType.isEqualToOrSuperTypeOf(termType);
|
|
193
|
-
if (variableTypeEqualToOrSuperTypeOfTermType) {
|
|
194
|
-
var termForVariableSubstitution = _termForVariable.default.fromVariableNameAndTermNode(variableName, termNode1), substitution1 = termForVariableSubstitution; ///
|
|
195
|
-
substitutions.push(substitution1);
|
|
196
|
-
variableVerified = true;
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
return variableVerified;
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
]);
|
|
206
|
-
return TermForVariableVerifier;
|
|
207
|
-
}(_verifier.default);
|
|
208
|
-
|
|
209
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZmllci90ZXJtRm9yVmFyaWFibGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXJcIjtcbmltcG9ydCB2ZXJpZnlUZXJtIGZyb20gXCIuLi92ZXJpZnkvdGVybVwiO1xuaW1wb3J0IFRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiBmcm9tIFwiLi4vc3Vic3RpdHV0aW9uL3Rlcm1Gb3JWYXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IFRFUk1fUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuaW1wb3J0IHsgdmFyaWFibGVOYW1lRnJvbVZhcmlhYmxlTm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoJy90ZXJtL3ZhcmlhYmxlIScpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXJtRm9yVmFyaWFibGVWZXJpZmllciBleHRlbmRzIFZlcmlmaWVyIHtcbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIHByb29mQ29udGV4dEEsIHByb29mQ29udGV4dEIpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZUEuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVCLmdldFJ1bGVOYW1lKCk7XG5cbiAgICBpZiAobm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lID09PSBub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUpIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZVRlcm1SdWxlTmFtZSA9IChub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUgPT09IFRFUk1fUlVMRV9OQU1FKSxcbiAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZVRlcm1SdWxlTmFtZSA9IChub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPT09IFRFUk1fUlVMRV9OQU1FKTtcblxuICAgICAgaWYgKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZVRlcm1SdWxlTmFtZSAmJiBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWVUZXJtUnVsZU5hbWUpIHtcbiAgICAgICAgY29uc3QgdGVybU5vZGVBID0gbm9uVGVybWluYWxOb2RlQSwgIC8vL1xuICAgICAgICAgICAgICB0ZXJtTm9kZUIgPSBub25UZXJtaW5hbE5vZGVCLCAgLy8vXG4gICAgICAgICAgICAgIHRlcm1Ob2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeVRlcm1Ob2RlKHRlcm1Ob2RlQSwgdGVybU5vZGVCLCBzdWJzdGl0dXRpb25zLCBwcm9vZkNvbnRleHRBLCBwcm9vZkNvbnRleHRCKTtcblxuICAgICAgICBpZiAodGVybU5vZGVWZXJpZmllZCkge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdHJ1ZTsgIC8vL1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIHByb29mQ29udGV4dEEsIHByb29mQ29udGV4dEIpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHN1cGVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBzdWJzdGl0dXRpb25zLCBwcm9vZkNvbnRleHRBLCBwcm9vZkNvbnRleHRCKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlUZXJtTm9kZSh0ZXJtTm9kZUEsIHRlcm1Ob2RlQiwgc3Vic3RpdHV0aW9ucywgcHJvb2ZDb250ZXh0QSwgcHJvb2ZDb250ZXh0Qikge1xuICAgIGxldCB0ZXJtTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCB2YXJpYWJsZU5vZGVBID0gdmFyaWFibGVOb2RlUXVlcnkodGVybU5vZGVBKTtcblxuICAgIGlmICh2YXJpYWJsZU5vZGVBICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB2YXJpYWJsZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlQSwgdGVybU5vZGVCLCBzdWJzdGl0dXRpb25zLCBwcm9vZkNvbnRleHRBLCBwcm9vZkNvbnRleHRCKTtcblxuICAgICAgdGVybU5vZGVWZXJpZmllZCA9IHZhcmlhYmxlVmVyaWZpZWQ7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiB0ZXJtTm9kZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5VmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZUEsIHRlcm1Ob2RlQiwgc3Vic3RpdHV0aW9ucywgcHJvb2ZDb250ZXh0QSwgcHJvb2ZDb250ZXh0Qikge1xuICAgIGxldCB2YXJpYWJsZVZlcmlmaWVkO1xuXG4gICAgY29uc3QgdmFyaWFibGVOYW1lQSA9IHZhcmlhYmxlTmFtZUZyb21WYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlQSksXG4gICAgICAgICAgc3Vic3RpdHV0aW9uID0gc3Vic3RpdHV0aW9ucy5maW5kKChzdWJzdGl0dXRpb24pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhcmlhYmxlTmFtZSA9IHN1YnN0aXR1dGlvbi5nZXRWYXJpYWJsZU5hbWUoKTtcblxuICAgICAgICAgICAgaWYgKHZhcmlhYmxlTmFtZSA9PT0gdmFyaWFibGVOYW1lQSkge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgaWYgKHN1YnN0aXR1dGlvbiAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdGVybU5vZGUgPSB0ZXJtTm9kZUIsIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uTm9kZXNWZXJpZmllZCA9IHN1YnN0aXR1dGlvbi5tYXRjaFRlcm1Ob2RlKHRlcm1Ob2RlKTtcblxuICAgICAgdmFyaWFibGVWZXJpZmllZCA9IHN1YnN0aXR1dGlvbk5vZGVzVmVyaWZpZWQ7ICAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgeyBjcmVhdGVTdWJzdGl0dXRpb25zIH0gPSB0aGlzLmNvbnN0cnVjdG9yO1xuXG4gICAgICBpZiAoY3JlYXRlU3Vic3RpdHV0aW9ucykge1xuICAgICAgICBjb25zdCB2YXJpYWJsZU5hbWUgPSB2YXJpYWJsZU5hbWVBLCAvLy9cbiAgICAgICAgICAgICAgcHJvb2ZDb250ZXh0ID0gcHJvb2ZDb250ZXh0QSwgLy8vXG4gICAgICAgICAgICAgIHZhcmlhYmxlID0gcHJvb2ZDb250ZXh0LmZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSk7XG5cbiAgICAgICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICAgICAgY29uc3QgdHlwZXMgPSBbXSxcbiAgICAgICAgICAgICAgICBjb250ZXh0ID0gcHJvb2ZDb250ZXh0QiwgLy8vXG4gICAgICAgICAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZUIsIC8vL1xuICAgICAgICAgICAgICAgIHRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm0odGVybU5vZGUsIHR5cGVzLCBjb250ZXh0KTtcblxuICAgICAgICAgIGlmICh0ZXJtVmVyaWZpZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpcnN0VHlwZSA9IGZpcnN0KHR5cGVzKSxcbiAgICAgICAgICAgICAgICAgIHRlcm1UeXBlID0gZmlyc3RUeXBlLFxuICAgICAgICAgICAgICAgICAgdmFyaWFibGVUeXBlID0gdmFyaWFibGUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgICAgICAgdmFyaWFibGVUeXBlRXF1YWxUb09yU3VwZXJUeXBlT2ZUZXJtVHlwZSA9IHZhcmlhYmxlVHlwZS5pc0VxdWFsVG9PclN1cGVyVHlwZU9mKHRlcm1UeXBlKTtcblxuICAgICAgICAgICAgaWYgKHZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mVGVybVR5cGUpIHtcbiAgICAgICAgICAgICAgY29uc3QgdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uID0gVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uLmZyb21WYXJpYWJsZU5hbWVBbmRUZXJtTm9kZSh2YXJpYWJsZU5hbWUsIHRlcm1Ob2RlKSxcbiAgICAgICAgICAgICAgICAgICAgc3Vic3RpdHV0aW9uID0gdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uOyAgLy8vXG5cbiAgICAgICAgICAgICAgc3Vic3RpdHV0aW9ucy5wdXNoKHN1YnN0aXR1dGlvbik7XG5cbiAgICAgICAgICAgICAgdmFyaWFibGVWZXJpZmllZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhcmlhYmxlVmVyaWZpZWQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJUZXJtRm9yVmFyaWFibGVWZXJpZmllciIsInZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJzdWJzdGl0dXRpb25zIiwicHJvb2ZDb250ZXh0QSIsInByb29mQ29udGV4dEIiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsIm5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSIsImdldFJ1bGVOYW1lIiwibm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lIiwibm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lVGVybVJ1bGVOYW1lIiwiVEVSTV9SVUxFX05BTUUiLCJub25UZXJtaW5hbE5vZGVCUnVsZU5hbWVUZXJtUnVsZU5hbWUiLCJ0ZXJtTm9kZUEiLCJ0ZXJtTm9kZUIiLCJ0ZXJtTm9kZVZlcmlmaWVkIiwidmVyaWZ5VGVybU5vZGUiLCJ2YXJpYWJsZU5vZGVBIiwidmFyaWFibGVWZXJpZmllZCIsInZlcmlmeVZhcmlhYmxlTm9kZSIsInZhcmlhYmxlTmFtZUEiLCJ2YXJpYWJsZU5hbWVGcm9tVmFyaWFibGVOb2RlIiwic3Vic3RpdHV0aW9uIiwiZmluZCIsInZhcmlhYmxlTmFtZSIsImdldFZhcmlhYmxlTmFtZSIsInRlcm1Ob2RlIiwic3Vic3RpdHV0aW9uTm9kZXNWZXJpZmllZCIsIm1hdGNoVGVybU5vZGUiLCJjcmVhdGVTdWJzdGl0dXRpb25zIiwiY29uc3RydWN0b3IiLCJwcm9vZkNvbnRleHQiLCJ2YXJpYWJsZSIsImZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOYW1lIiwidHlwZXMiLCJjb250ZXh0IiwidGVybVZlcmlmaWVkIiwidmVyaWZ5VGVybSIsImZpcnN0VHlwZSIsImZpcnN0IiwidGVybVR5cGUiLCJ2YXJpYWJsZVR5cGUiLCJnZXRUeXBlIiwidmFyaWFibGVUeXBlRXF1YWxUb09yU3VwZXJUeXBlT2ZUZXJtVHlwZSIsImlzRXF1YWxUb09yU3VwZXJUeXBlT2YiLCJ0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24iLCJUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24iLCJmcm9tVmFyaWFibGVOYW1lQW5kVGVybU5vZGUiLCJwdXNoIiwiVmVyaWZpZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBYXFCQTs7OytEQVhBOzJEQUNFO3NFQUNpQjtxQkFFbEI7cUJBQ0k7eUJBQ0s7Ozs7Ozs7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
|
package/lib/verifier.js
DELETED
|
@@ -1,138 +0,0 @@
|
|
|
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 Verifier;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
function _array_like_to_array(arr, len) {
|
|
12
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
13
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
14
|
-
return arr2;
|
|
15
|
-
}
|
|
16
|
-
function _array_without_holes(arr) {
|
|
17
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
18
|
-
}
|
|
19
|
-
function _class_call_check(instance, Constructor) {
|
|
20
|
-
if (!(instance instanceof Constructor)) {
|
|
21
|
-
throw new TypeError("Cannot call a class as a function");
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
function _defineProperties(target, props) {
|
|
25
|
-
for(var i = 0; i < props.length; i++){
|
|
26
|
-
var descriptor = props[i];
|
|
27
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
28
|
-
descriptor.configurable = true;
|
|
29
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
30
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
34
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
35
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
36
|
-
return Constructor;
|
|
37
|
-
}
|
|
38
|
-
function _iterable_to_array(iter) {
|
|
39
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
40
|
-
}
|
|
41
|
-
function _non_iterable_spread() {
|
|
42
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
43
|
-
}
|
|
44
|
-
function _to_consumable_array(arr) {
|
|
45
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
46
|
-
}
|
|
47
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
48
|
-
if (!o) return;
|
|
49
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
50
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
51
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
52
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
53
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
54
|
-
}
|
|
55
|
-
var Verifier = /*#__PURE__*/ function() {
|
|
56
|
-
function Verifier() {
|
|
57
|
-
_class_call_check(this, Verifier);
|
|
58
|
-
}
|
|
59
|
-
_create_class(Verifier, [
|
|
60
|
-
{
|
|
61
|
-
key: "verifyNode",
|
|
62
|
-
value: function verifyNode(nodeA, nodeB) {
|
|
63
|
-
for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
|
|
64
|
-
remainingArguments[_key - 2] = arguments[_key];
|
|
65
|
-
}
|
|
66
|
-
var nodeVerified = false;
|
|
67
|
-
var nodeATerminalNode = nodeA.isTerminalNode(), nodeBTerminalNode = nodeB.isTerminalNode();
|
|
68
|
-
if (nodeATerminalNode === nodeBTerminalNode) {
|
|
69
|
-
if (nodeATerminalNode) {
|
|
70
|
-
var terminalNodeA = nodeA, terminalNodeB = nodeB, terminalNodeVerified = this.verifyTerminalNode(terminalNodeA, terminalNodeB);
|
|
71
|
-
nodeVerified = terminalNodeVerified; ///
|
|
72
|
-
} else {
|
|
73
|
-
var nonTerminalNodeA = nodeA, nonTerminalNodeB = nodeB, nonTerminalNodeVerified = this.verifyNonTerminalNode.apply(this, [
|
|
74
|
-
nonTerminalNodeA,
|
|
75
|
-
nonTerminalNodeB
|
|
76
|
-
].concat(_to_consumable_array(remainingArguments)));
|
|
77
|
-
nodeVerified = nonTerminalNodeVerified; ///
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
return nodeVerified;
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
key: "verifyNodes",
|
|
85
|
-
value: function verifyNodes(nodesA, nodesB) {
|
|
86
|
-
for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
|
|
87
|
-
remainingArguments[_key - 2] = arguments[_key];
|
|
88
|
-
}
|
|
89
|
-
var _this = this;
|
|
90
|
-
var nodesVerify = false;
|
|
91
|
-
var nodesALength = nodesA.length, nodesBLength = nodesB.length;
|
|
92
|
-
if (nodesALength === nodesBLength) {
|
|
93
|
-
nodesVerify = nodesA.every(function(nodeA, index) {
|
|
94
|
-
var nodeB = nodesB[index], nodeVerified = _this.verifyNode.apply(_this, [
|
|
95
|
-
nodeA,
|
|
96
|
-
nodeB
|
|
97
|
-
].concat(_to_consumable_array(remainingArguments)));
|
|
98
|
-
if (nodeVerified) {
|
|
99
|
-
return true;
|
|
100
|
-
}
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
return nodesVerify;
|
|
104
|
-
}
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
key: "verifyTerminalNode",
|
|
108
|
-
value: function verifyTerminalNode(terminalNodeA, terminalNodeB) {
|
|
109
|
-
for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
|
|
110
|
-
remainingArguments[_key - 2] = arguments[_key];
|
|
111
|
-
}
|
|
112
|
-
var matches = terminalNodeA.match(terminalNodeB), terminalNodeVerified = matches; ///
|
|
113
|
-
return terminalNodeVerified;
|
|
114
|
-
}
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
key: "verifyNonTerminalNode",
|
|
118
|
-
value: function verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB) {
|
|
119
|
-
for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
|
|
120
|
-
remainingArguments[_key - 2] = arguments[_key];
|
|
121
|
-
}
|
|
122
|
-
var nonTerminalNodeVerified = false;
|
|
123
|
-
var nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName(); ///
|
|
124
|
-
if (nonTerminalNodeARuleName === nonTerminalNodeBRuleName) {
|
|
125
|
-
var nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(), nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(), nodesA = nonTerminalNodeAChildNodes, nodesB = nonTerminalNodeBChildNodes, nodesVerify = this.verifyNodes.apply(this, [
|
|
126
|
-
nodesA,
|
|
127
|
-
nodesB
|
|
128
|
-
].concat(_to_consumable_array(remainingArguments)));
|
|
129
|
-
nonTerminalNodeVerified = nodesVerify; ///
|
|
130
|
-
}
|
|
131
|
-
return nonTerminalNodeVerified;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
]);
|
|
135
|
-
return Verifier;
|
|
136
|
-
}();
|
|
137
|
-
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92ZXJpZmllci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVyaWZpZXIge1xuICB2ZXJpZnlOb2RlKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9kZUFUZXJtaW5hbE5vZGUgPSBub2RlQS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICAgIG5vZGVCVGVybWluYWxOb2RlID0gbm9kZUIuaXNUZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmIChub2RlQVRlcm1pbmFsTm9kZSA9PT0gbm9kZUJUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGlmIChub2RlQVRlcm1pbmFsTm9kZSkge1xuICAgICAgICBjb25zdCB0ZXJtaW5hbE5vZGVBID0gbm9kZUEsICAvLy9cbiAgICAgICAgICAgICAgdGVybWluYWxOb2RlQiA9IG5vZGVCLCAgLy8vXG4gICAgICAgICAgICAgIHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQik7XG5cbiAgICAgICAgbm9kZVZlcmlmaWVkID0gdGVybWluYWxOb2RlVmVyaWZpZWQ7ICAvLy9cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSBub2RlQSwgIC8vL1xuICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUIsIC8vL1xuICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgICAgbm9kZVZlcmlmaWVkID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlOb2Rlcyhub2Rlc0EsIG5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vZGVzVmVyaWZ5ID0gZmFsc2U7XG5cbiAgICBjb25zdCBub2Rlc0FMZW5ndGggPSBub2Rlc0EubGVuZ3RoLFxuICAgICAgICAgIG5vZGVzQkxlbmd0aCA9IG5vZGVzQi5sZW5ndGg7XG5cbiAgICBpZiAobm9kZXNBTGVuZ3RoID09PSBub2Rlc0JMZW5ndGgpIHtcbiAgICAgIG5vZGVzVmVyaWZ5ID0gbm9kZXNBLmV2ZXJ5KChub2RlQSwgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3Qgbm9kZUIgPSBub2Rlc0JbaW5kZXhdLFxuICAgICAgICAgICAgICBub2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU5vZGUobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICAgIGlmIChub2RlVmVyaWZpZWQpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVzVmVyaWZ5O1xuICB9XG5cbiAgdmVyaWZ5VGVybWluYWxOb2RlKHRlcm1pbmFsTm9kZUEsIHRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSB0ZXJtaW5hbE5vZGVBLm1hdGNoKHRlcm1pbmFsTm9kZUIpLFxuICAgICAgICAgIHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbWF0Y2hlczsgIC8vL1xuXG4gICAgcmV0dXJuIHRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVCLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gICAgaWYgKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9PT0gbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lKSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZUEuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGVCLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgIG5vZGVzQSA9IG5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgIG5vZGVzQiA9IG5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgIG5vZGVzVmVyaWZ5ID0gdGhpcy52ZXJpZnlOb2Rlcyhub2Rlc0EsIG5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBub2Rlc1ZlcmlmeTsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG4iXSwibmFtZXMiOlsiVmVyaWZpZXIiLCJ2ZXJpZnlOb2RlIiwibm9kZUEiLCJub2RlQiIsInJlbWFpbmluZ0FyZ3VtZW50cyIsIm5vZGVWZXJpZmllZCIsIm5vZGVBVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJub2RlQlRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZUEiLCJ0ZXJtaW5hbE5vZGVCIiwidGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwidmVyaWZ5Tm9kZXMiLCJub2Rlc0EiLCJub2Rlc0IiLCJub2Rlc1ZlcmlmeSIsIm5vZGVzQUxlbmd0aCIsImxlbmd0aCIsIm5vZGVzQkxlbmd0aCIsImV2ZXJ5IiwiaW5kZXgiLCJtYXRjaGVzIiwibWF0Y2giLCJub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsIm5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQU4sSUFBQSxBQUFNQSx5QkFBTjthQUFNQTtnQ0FBQUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXQyxLQUFLLEVBQUVDLEtBQUs7Z0JBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdDLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO29CQUFHQSxtQkFBSCxPQUFBLEtBQUEsU0FBQSxDQUFBLEtBQXFCOztnQkFDNUMsSUFBSUMsZUFBZTtnQkFFbkIsSUFBTUMsb0JBQW9CSixNQUFNSyxjQUFjLElBQ3hDQyxvQkFBb0JMLE1BQU1JLGNBQWM7Z0JBRTlDLElBQUlELHNCQUFzQkUsbUJBQW1CO29CQUMzQyxJQUFJRixtQkFBbUI7d0JBQ3JCLElBQU1HLGdCQUFnQlAsT0FDaEJRLGdCQUFnQlAsT0FDaEJRLHVCQUF1QixJQUFJLENBQUNDLGtCQUFrQixDQUFDSCxlQUFlQzt3QkFFcEVMLGVBQWVNLHNCQUF1QixHQUFHO29CQUMzQyxPQUFPO3dCQUNMLElBQU1FLG1CQUFtQlgsT0FDbkJZLG1CQUFtQlgsT0FDbkJZLDBCQUEwQixJQUFJLENBQUNDLHFCQUFxQixDQUExQixNQUFBLElBQUksRUFBSjs0QkFBMkJIOzRCQUFrQkM7eUJBQXdDLENBQXJGLE9BQStELHFCQUFHVjt3QkFFbEdDLGVBQWVVLHlCQUF5QixHQUFHO29CQUM3QztnQkFDRjtnQkFFQSxPQUFPVjtZQUNUOzs7WUFFQVksS0FBQUE7bUJBQUFBLFNBQUFBLFlBQVlDLE1BQU0sRUFBRUMsTUFBTTtnQkFBRSxJQUFBLElBQUEsT0FBQSxVQUFBLFFBQUEsQUFBR2YscUJBQUgsVUFBQSxPQUFBLElBQUEsT0FBQSxRQUFBLE9BQUEsR0FBQSxPQUFBLE1BQUE7b0JBQUdBLG1CQUFILE9BQUEsS0FBQSxTQUFBLENBQUEsS0FBcUI7OztnQkFDL0MsSUFBSWdCLGNBQWM7Z0JBRWxCLElBQU1DLGVBQWVILE9BQU9JLE1BQU0sRUFDNUJDLGVBQWVKLE9BQU9HLE1BQU07Z0JBRWxDLElBQUlELGlCQUFpQkUsY0FBYztvQkFDakNILGNBQWNGLE9BQU9NLEtBQUssQ0FBQyxTQUFDdEIsT0FBT3VCO3dCQUNqQyxJQUFNdEIsUUFBUWdCLE1BQU0sQ0FBQ00sTUFBTSxFQUNyQnBCLGVBQWUsTUFBS0osVUFBVSxDQUFmLGFBQUE7NEJBQWdCQzs0QkFBT0M7eUJBQTZCLENBQXBELE9BQThCLHFCQUFHQzt3QkFFdEQsSUFBSUMsY0FBYzs0QkFDaEIsT0FBTzt3QkFDVDtvQkFDRjtnQkFDRjtnQkFFQSxPQUFPZTtZQUNUOzs7WUFFQVIsS0FBQUE7bUJBQUFBLFNBQUFBLG1CQUFtQkgsYUFBYSxFQUFFQyxhQUFhO2dCQUFFLElBQUEsSUFBQSxPQUFBLFVBQUEsUUFBQSxBQUFHTixxQkFBSCxVQUFBLE9BQUEsSUFBQSxPQUFBLFFBQUEsT0FBQSxHQUFBLE9BQUEsTUFBQTtvQkFBR0EsbUJBQUgsT0FBQSxLQUFBLFNBQUEsQ0FBQSxLQUFxQjs7Z0JBQ3BFLElBQU1zQixVQUFVakIsY0FBY2tCLEtBQUssQ0FBQ2pCLGdCQUM5QkMsdUJBQXVCZSxTQUFVLEdBQUc7Z0JBRTFDLE9BQU9mO1lBQ1Q7OztZQUVBSyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCSCxnQkFBZ0IsRUFBRUMsZ0JBQWdCO2dCQUFFLElBQUEsSUFBQSxPQUFBLFVBQUEsUUFBQSxBQUFHVixxQkFBSCxVQUFBLE9BQUEsSUFBQSxPQUFBLFFBQUEsT0FBQSxHQUFBLE9BQUEsTUFBQTtvQkFBR0EsbUJBQUgsT0FBQSxLQUFBLFNBQUEsQ0FBQSxLQUFxQjs7Z0JBQzdFLElBQUlXLDBCQUEwQjtnQkFFOUIsSUFBTWEsMkJBQTJCZixpQkFBaUJnQixXQUFXLElBQ3ZEQywyQkFBMkJoQixpQkFBaUJlLFdBQVcsSUFBSSxHQUFHO2dCQUVwRSxJQUFJRCw2QkFBNkJFLDBCQUEwQjtvQkFDekQsSUFBTUMsNkJBQTZCbEIsaUJBQWlCbUIsYUFBYSxJQUMzREMsNkJBQTZCbkIsaUJBQWlCa0IsYUFBYSxJQUMzRGQsU0FBU2EsNEJBQ1RaLFNBQVNjLDRCQUNUYixjQUFjLElBQUksQ0FBQ0gsV0FBVyxDQUFoQixNQUFBLElBQUksRUFBSjt3QkFBaUJDO3dCQUFRQztxQkFBOEIsQ0FBdkQsT0FBaUMscUJBQUdmO29CQUV4RFcsMEJBQTBCSyxhQUFhLEdBQUc7Z0JBQzVDO2dCQUVBLE9BQU9MO1lBQ1Q7OztXQXRFbUJmIn0=
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import MetastatementForMetavariableVerifier from "../../verifier/metastatementForMetavariable";
|
|
4
|
-
|
|
5
|
-
class ConclusionMetastatementForMetavariableVerifier extends MetastatementForMetavariableVerifier {
|
|
6
|
-
static createSubstitutions = false;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export const conclusionMetastatementForMetavariableVerifier = new ConclusionMetastatementForMetavariableVerifier();
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import MetastatementForMetavariableVerifier from "../../verifier/metastatementForMetavariable";
|
|
4
|
-
|
|
5
|
-
class PremiseMetastatementForMetavariableVerifier extends MetastatementForMetavariableVerifier {
|
|
6
|
-
static createSubstitutions = true;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export const premiseMetastatementForMetavariableVerifier = new PremiseMetastatementForMetavariableVerifier();
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import StatementForMetavariableVerifier from "../../verifier/statementForMetavariable";
|
|
4
|
-
|
|
5
|
-
class ConclusionStatementForMetavariableVerifier extends StatementForMetavariableVerifier {
|
|
6
|
-
static createSubstitutions = false;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export const conclusionStatementForMetavariableVerifier = new ConclusionStatementForMetavariableVerifier();
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import StatementForMetavariableVerifier from "../../verifier/statementForMetavariable";
|
|
4
|
-
|
|
5
|
-
class PremiseStatementForMetavariableVerifier extends StatementForMetavariableVerifier {
|
|
6
|
-
static createSubstitutions = true;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export const premiseStatementForMetavariableVerifier = new PremiseStatementForMetavariableVerifier();
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import TermForVariableVerifier from "../../verifier/termForVariable";
|
|
4
|
-
|
|
5
|
-
class ConsequentTermForVariableVerifier extends TermForVariableVerifier {
|
|
6
|
-
static createSubstitutions = false;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export const consequentTermForVariableVerifier = new ConsequentTermForVariableVerifier();
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import TermForVariableVerifier from "../../verifier/termForVariable";
|
|
4
|
-
|
|
5
|
-
class SuppositionTermForVariableVerifier extends TermForVariableVerifier {
|
|
6
|
-
static createSubstitutions = true;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export const suppositionTermForVariableVerifier = new SuppositionTermForVariableVerifier();
|
package/src/verifier.js
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
export default class Verifier {
|
|
4
|
-
verifyNode(nodeA, nodeB, ...remainingArguments) {
|
|
5
|
-
let nodeVerified = false;
|
|
6
|
-
|
|
7
|
-
const nodeATerminalNode = nodeA.isTerminalNode(),
|
|
8
|
-
nodeBTerminalNode = nodeB.isTerminalNode();
|
|
9
|
-
|
|
10
|
-
if (nodeATerminalNode === nodeBTerminalNode) {
|
|
11
|
-
if (nodeATerminalNode) {
|
|
12
|
-
const terminalNodeA = nodeA, ///
|
|
13
|
-
terminalNodeB = nodeB, ///
|
|
14
|
-
terminalNodeVerified = this.verifyTerminalNode(terminalNodeA, terminalNodeB);
|
|
15
|
-
|
|
16
|
-
nodeVerified = terminalNodeVerified; ///
|
|
17
|
-
} else {
|
|
18
|
-
const nonTerminalNodeA = nodeA, ///
|
|
19
|
-
nonTerminalNodeB = nodeB, ///
|
|
20
|
-
nonTerminalNodeVerified = this.verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, ...remainingArguments);
|
|
21
|
-
|
|
22
|
-
nodeVerified = nonTerminalNodeVerified; ///
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
return nodeVerified;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
verifyNodes(nodesA, nodesB, ...remainingArguments) {
|
|
30
|
-
let nodesVerify = false;
|
|
31
|
-
|
|
32
|
-
const nodesALength = nodesA.length,
|
|
33
|
-
nodesBLength = nodesB.length;
|
|
34
|
-
|
|
35
|
-
if (nodesALength === nodesBLength) {
|
|
36
|
-
nodesVerify = nodesA.every((nodeA, index) => {
|
|
37
|
-
const nodeB = nodesB[index],
|
|
38
|
-
nodeVerified = this.verifyNode(nodeA, nodeB, ...remainingArguments);
|
|
39
|
-
|
|
40
|
-
if (nodeVerified) {
|
|
41
|
-
return true;
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
return nodesVerify;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
verifyTerminalNode(terminalNodeA, terminalNodeB, ...remainingArguments) {
|
|
50
|
-
const matches = terminalNodeA.match(terminalNodeB),
|
|
51
|
-
terminalNodeVerified = matches; ///
|
|
52
|
-
|
|
53
|
-
return terminalNodeVerified;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, ...remainingArguments) {
|
|
57
|
-
let nonTerminalNodeVerified = false;
|
|
58
|
-
|
|
59
|
-
const nonTerminalNodeARuleName = nonTerminalNodeA.getRuleName(), ///
|
|
60
|
-
nonTerminalNodeBRuleName = nonTerminalNodeB.getRuleName(); ///
|
|
61
|
-
|
|
62
|
-
if (nonTerminalNodeARuleName === nonTerminalNodeBRuleName) {
|
|
63
|
-
const nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(),
|
|
64
|
-
nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(),
|
|
65
|
-
nodesA = nonTerminalNodeAChildNodes, ///
|
|
66
|
-
nodesB = nonTerminalNodeBChildNodes, ///
|
|
67
|
-
nodesVerify = this.verifyNodes(nodesA, nodesB, ...remainingArguments);
|
|
68
|
-
|
|
69
|
-
nonTerminalNodeVerified = nodesVerify; ///
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
return nonTerminalNodeVerified;
|
|
73
|
-
}
|
|
74
|
-
}
|