occam-verify-cli 0.0.931 → 0.0.933

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.
Files changed (103) hide show
  1. package/lib/conclusion.js +4 -4
  2. package/lib/consequent.js +4 -4
  3. package/lib/context/local.js +181 -3
  4. package/lib/equality.js +4 -4
  5. package/lib/metaLemma.js +4 -4
  6. package/lib/metatheorem.js +4 -4
  7. package/lib/premise.js +6 -6
  8. package/lib/substitution/statementForMetavariable.js +2 -2
  9. package/lib/supposition.js +6 -6
  10. package/lib/unifier/equality.js +216 -0
  11. package/lib/unifier/metaLevel.js +231 -0
  12. package/lib/unifier/statementAgainstCombinator.js +231 -0
  13. package/lib/unifier/termAgainstConstructor.js +211 -0
  14. package/lib/unifier.js +201 -0
  15. package/lib/unify/argumentAgainstArgument.js +24 -0
  16. package/lib/unify/metavariableAgainstStatement.js +66 -0
  17. package/lib/unify/statementAgainstMetaType.js +28 -0
  18. package/lib/unify/statementAtainstStatement.js +52 -0
  19. package/lib/unify/termAgainstTerm.js +22 -0
  20. package/lib/unify/termAgainstType.js +26 -0
  21. package/lib/unify/variableAgainstTerm.js +70 -0
  22. package/lib/verifier/metaLevel.js +236 -0
  23. package/lib/verifier/statementAsCombinator.js +236 -0
  24. package/lib/verifier/termAsConstructor.js +219 -0
  25. package/lib/verifier.js +182 -0
  26. package/lib/verify/assertion/contained.js +2 -2
  27. package/lib/verify/assertion/defined.js +2 -2
  28. package/lib/verify/declaration.js +3 -3
  29. package/lib/verify/frame.js +9 -12
  30. package/lib/verify/judgement.js +2 -2
  31. package/lib/verify/statement/qualified.js +6 -3
  32. package/lib/verify/statement/unqualified.js +2 -1
  33. package/lib/verify/statement.js +26 -19
  34. package/lib/verify/statementAsCombinator.js +2 -2
  35. package/lib/verify/term.js +6 -6
  36. package/lib/verify/termAsConstructor.js +2 -2
  37. package/package.json +2 -2
  38. package/src/conclusion.js +3 -3
  39. package/src/consequent.js +3 -3
  40. package/src/context/local.js +60 -3
  41. package/src/equality.js +3 -3
  42. package/src/metaLemma.js +1 -1
  43. package/src/metatheorem.js +1 -1
  44. package/src/premise.js +5 -5
  45. package/src/substitution/statementForMetavariable.js +2 -2
  46. package/src/supposition.js +5 -5
  47. package/src/unifier/equality.js +84 -0
  48. package/src/unifier/metaLevel.js +109 -0
  49. package/src/unifier/statementAgainstCombinator.js +104 -0
  50. package/src/unifier/termAgainstConstructor.js +76 -0
  51. package/src/unifier.js +133 -0
  52. package/src/unify/argumentAgainstArgument.js +15 -0
  53. package/src/{verify → unify}/metavariableAgainstStatement.js +18 -18
  54. package/src/{verify → unify}/statementAgainstMetaType.js +4 -4
  55. package/src/{verify → unify}/statementAtainstStatement.js +7 -7
  56. package/src/{verify → unify}/termAgainstTerm.js +5 -5
  57. package/src/{verify → unify}/termAgainstType.js +7 -7
  58. package/src/{verify → unify}/variableAgainstTerm.js +6 -6
  59. package/src/verifier/{node/metaLevel.js → metaLevel.js} +14 -14
  60. package/src/verifier/{node/statementAsCombinator.js → statementAsCombinator.js} +14 -14
  61. package/src/verifier/{node/termAsConstructor.js → termAsConstructor.js} +12 -12
  62. package/src/{verifier/node.js → verifier.js} +19 -1
  63. package/src/verify/assertion/contained.js +2 -2
  64. package/src/verify/assertion/defined.js +2 -2
  65. package/src/verify/declaration.js +3 -3
  66. package/src/verify/frame.js +10 -13
  67. package/src/verify/judgement.js +1 -1
  68. package/src/verify/statement/qualified.js +12 -3
  69. package/src/verify/statement/unqualified.js +2 -1
  70. package/src/verify/statement.js +30 -25
  71. package/src/verify/statementAsCombinator.js +2 -2
  72. package/src/verify/term.js +6 -6
  73. package/src/verify/termAsConstructor.js +2 -2
  74. package/lib/mixins/context.js +0 -135
  75. package/lib/mixins/nodesVerifier/intrinsiclevel.js +0 -59
  76. package/lib/mixins/nodesVerifier/metaLevel.js +0 -40
  77. package/lib/utilities/verifier.js +0 -80
  78. package/lib/verifier/node/metaLevel.js +0 -201
  79. package/lib/verifier/node/statementAsCombinator.js +0 -201
  80. package/lib/verifier/node/termAsConstructor.js +0 -184
  81. package/lib/verifier/node.js +0 -157
  82. package/lib/verifier/nodes/equality.js +0 -176
  83. package/lib/verifier/nodes/metaLevel.js +0 -191
  84. package/lib/verifier/nodes/statementAgainstCombinator.js +0 -191
  85. package/lib/verifier/nodes/termAgainstConstructor.js +0 -171
  86. package/lib/verifier/nodes.js +0 -175
  87. package/lib/verify/argumentAgainstArgument.js +0 -24
  88. package/lib/verify/metavariableAgainstStatement.js +0 -66
  89. package/lib/verify/statementAgainstMetaType.js +0 -28
  90. package/lib/verify/statementAtainstStatement.js +0 -52
  91. package/lib/verify/termAgainstTerm.js +0 -22
  92. package/lib/verify/termAgainstType.js +0 -26
  93. package/lib/verify/variableAgainstTerm.js +0 -70
  94. package/src/mixins/context.js +0 -96
  95. package/src/mixins/nodesVerifier/intrinsiclevel.js +0 -73
  96. package/src/mixins/nodesVerifier/metaLevel.js +0 -39
  97. package/src/utilities/verifier.js +0 -38
  98. package/src/verifier/nodes/equality.js +0 -84
  99. package/src/verifier/nodes/metaLevel.js +0 -106
  100. package/src/verifier/nodes/statementAgainstCombinator.js +0 -105
  101. package/src/verifier/nodes/termAgainstConstructor.js +0 -76
  102. package/src/verifier/nodes.js +0 -114
  103. package/src/verify/argumentAgainstArgument.js +0 -15
@@ -0,0 +1,231 @@
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 _default;
9
+ }
10
+ });
11
+ var _unifier = /*#__PURE__*/ _interop_require_wildcard(require("../unifier"));
12
+ var _variableAgainstTerm = /*#__PURE__*/ _interop_require_default(require("../unify/variableAgainstTerm"));
13
+ var _metavariableAgainstStatement = /*#__PURE__*/ _interop_require_default(require("../unify/metavariableAgainstStatement"));
14
+ var _query = require("../utilities/query");
15
+ function _assert_this_initialized(self) {
16
+ if (self === void 0) {
17
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
18
+ }
19
+ return self;
20
+ }
21
+ function _call_super(_this, derived, args) {
22
+ derived = _get_prototype_of(derived);
23
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
24
+ }
25
+ function _class_call_check(instance, Constructor) {
26
+ if (!(instance instanceof Constructor)) {
27
+ throw new TypeError("Cannot call a class as a function");
28
+ }
29
+ }
30
+ function _defineProperties(target, props) {
31
+ for(var i = 0; i < props.length; i++){
32
+ var descriptor = props[i];
33
+ descriptor.enumerable = descriptor.enumerable || false;
34
+ descriptor.configurable = true;
35
+ if ("value" in descriptor) descriptor.writable = true;
36
+ Object.defineProperty(target, descriptor.key, descriptor);
37
+ }
38
+ }
39
+ function _create_class(Constructor, protoProps, staticProps) {
40
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
41
+ if (staticProps) _defineProperties(Constructor, staticProps);
42
+ return Constructor;
43
+ }
44
+ function _get(target, property, receiver) {
45
+ if (typeof Reflect !== "undefined" && Reflect.get) {
46
+ _get = Reflect.get;
47
+ } else {
48
+ _get = function get(target, property, receiver) {
49
+ var base = _super_prop_base(target, property);
50
+ if (!base) return;
51
+ var desc = Object.getOwnPropertyDescriptor(base, property);
52
+ if (desc.get) {
53
+ return desc.get.call(receiver || target);
54
+ }
55
+ return desc.value;
56
+ };
57
+ }
58
+ return _get(target, property, receiver || target);
59
+ }
60
+ function _get_prototype_of(o) {
61
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
62
+ return o.__proto__ || Object.getPrototypeOf(o);
63
+ };
64
+ return _get_prototype_of(o);
65
+ }
66
+ function _inherits(subClass, superClass) {
67
+ if (typeof superClass !== "function" && superClass !== null) {
68
+ throw new TypeError("Super expression must either be null or a function");
69
+ }
70
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
71
+ constructor: {
72
+ value: subClass,
73
+ writable: true,
74
+ configurable: true
75
+ }
76
+ });
77
+ if (superClass) _set_prototype_of(subClass, superClass);
78
+ }
79
+ function _interop_require_default(obj) {
80
+ return obj && obj.__esModule ? obj : {
81
+ default: obj
82
+ };
83
+ }
84
+ function _getRequireWildcardCache(nodeInterop) {
85
+ if (typeof WeakMap !== "function") return null;
86
+ var cacheBabelInterop = new WeakMap();
87
+ var cacheNodeInterop = new WeakMap();
88
+ return (_getRequireWildcardCache = function(nodeInterop) {
89
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
90
+ })(nodeInterop);
91
+ }
92
+ function _interop_require_wildcard(obj, nodeInterop) {
93
+ if (!nodeInterop && obj && obj.__esModule) {
94
+ return obj;
95
+ }
96
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
97
+ return {
98
+ default: obj
99
+ };
100
+ }
101
+ var cache = _getRequireWildcardCache(nodeInterop);
102
+ if (cache && cache.has(obj)) {
103
+ return cache.get(obj);
104
+ }
105
+ var newObj = {
106
+ __proto__: null
107
+ };
108
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
109
+ for(var key in obj){
110
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
111
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
112
+ if (desc && (desc.get || desc.set)) {
113
+ Object.defineProperty(newObj, key, desc);
114
+ } else {
115
+ newObj[key] = obj[key];
116
+ }
117
+ }
118
+ }
119
+ newObj.default = obj;
120
+ if (cache) {
121
+ cache.set(obj, newObj);
122
+ }
123
+ return newObj;
124
+ }
125
+ function _possible_constructor_return(self, call) {
126
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
127
+ return call;
128
+ }
129
+ return _assert_this_initialized(self);
130
+ }
131
+ function _set_prototype_of(o, p) {
132
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
133
+ o.__proto__ = p;
134
+ return o;
135
+ };
136
+ return _set_prototype_of(o, p);
137
+ }
138
+ function _super_prop_base(object, property) {
139
+ while(!Object.prototype.hasOwnProperty.call(object, property)){
140
+ object = _get_prototype_of(object);
141
+ if (object === null) break;
142
+ }
143
+ return object;
144
+ }
145
+ function _type_of(obj) {
146
+ "@swc/helpers - typeof";
147
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
148
+ }
149
+ function _is_native_reflect_construct() {
150
+ try {
151
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
152
+ } catch (_) {}
153
+ return (_is_native_reflect_construct = function() {
154
+ return !!result;
155
+ })();
156
+ }
157
+ var termNodeQuery = (0, _query.nodeQuery)("/term!"), statementNodeQuery = (0, _query.nodeQuery)("/statement!"), nonTerminalNodeQuery = (0, _query.nodeQuery)("/*"), termVariableNodeQuery = (0, _query.nodeQuery)("/term/variable!"), statementSubstitutionNodeQuery = (0, _query.nodeQuery)("/statement/substitution!"), statementMetavariableNodeQuery = (0, _query.nodeQuery)("/statement/metavariable!");
158
+ var MetaLevelUnifier = /*#__PURE__*/ function(Unifier) {
159
+ _inherits(MetaLevelUnifier, Unifier);
160
+ function MetaLevelUnifier() {
161
+ _class_call_check(this, MetaLevelUnifier);
162
+ return _call_super(this, MetaLevelUnifier, arguments);
163
+ }
164
+ _create_class(MetaLevelUnifier, [
165
+ {
166
+ key: "unifyNonTerminalNode",
167
+ value: function unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, substitutions, localContextA, localContextB, unifyAhead) {
168
+ var _this = this;
169
+ var nonTerminalNodeUnified;
170
+ var nodeQueryMaps = [
171
+ {
172
+ nodeQueryA: statementMetavariableNodeQuery,
173
+ nodeQueryB: statementNodeQuery,
174
+ unify: function(nodeA, nodeB, substitutions, localContextA, localContextB, unifyAhead) {
175
+ var nonTerminalNodeUnified;
176
+ var statementNodeA = nonTerminalNodeA, statementNodeB = nodeB, statementMetavariableNodeA = nodeA, statementSubstitutionNodeA = statementSubstitutionNodeQuery(statementNodeA), metavariableNodeUnifiedAgainstStatementNode = _this.unifyStatementMetavariableNodeAgainstStatementNode(statementMetavariableNodeA, statementSubstitutionNodeA, statementNodeB, substitutions, localContextA, localContextB, unifyAhead);
177
+ nonTerminalNodeUnified = metavariableNodeUnifiedAgainstStatementNode; ///
178
+ return nonTerminalNodeUnified;
179
+ }
180
+ },
181
+ {
182
+ nodeQueryA: termVariableNodeQuery,
183
+ nodeQueryB: termNodeQuery,
184
+ unify: function(nodeA, nodeB, substitutions, localContextA, localContextB, unifyAhead) {
185
+ var nonTerminalNodeUnified;
186
+ var termNodeB = nodeB, termVariableNodeA = nodeA, termVariableNodeUnifiedAgainstTermNode = _this.unifyTermVariableNodeAgainstTermNode(termVariableNodeA, termNodeB, substitutions, localContextA, localContextB, unifyAhead);
187
+ nonTerminalNodeUnified = termVariableNodeUnifiedAgainstTermNode; ///
188
+ return nonTerminalNodeUnified;
189
+ }
190
+ },
191
+ {
192
+ nodeQueryA: nonTerminalNodeQuery,
193
+ nodeQueryB: nonTerminalNodeQuery,
194
+ unify: function(nodeA, nodeB, substitutions, localContextA, localContextB, unifyAhead) {
195
+ var nonTerminalNodeUnified;
196
+ var _$nonTerminalNodeA = nodeA, _$nonTerminalNodeB = nodeB; ///
197
+ nonTerminalNodeUnified = _get(_get_prototype_of(MetaLevelUnifier.prototype), "unifyNonTerminalNode", _this).call(_this, _$nonTerminalNodeA, _$nonTerminalNodeB, substitutions, localContextA, localContextB, unifyAhead);
198
+ return nonTerminalNodeUnified;
199
+ }
200
+ }
201
+ ];
202
+ var nodesUnified = (0, _unifier.unify)(nodeQueryMaps, nonTerminalNodeA, nonTerminalNodeB, substitutions, localContextA, localContextB, unifyAhead);
203
+ nonTerminalNodeUnified = nodesUnified; ///
204
+ return nonTerminalNodeUnified;
205
+ }
206
+ },
207
+ {
208
+ key: "unifyStatementMetavariableNodeAgainstStatementNode",
209
+ value: function unifyStatementMetavariableNodeAgainstStatementNode(statementMetavariableNodeA, statementSubstitutionNodeA, statementNodeB, substitutions, localContextA, localContextB, unifyAhead) {
210
+ var metavariableNodeUnifiedAgainstStatementNode;
211
+ var substitutionNode = statementSubstitutionNodeA, metavariableNodeA = statementMetavariableNodeA, metavariableUnifiedAgainstStatement = (0, _metavariableAgainstStatement.default)(metavariableNodeA, statementNodeB, substitutionNode, substitutions, localContextA, localContextB, unifyAhead);
212
+ metavariableNodeUnifiedAgainstStatementNode = metavariableUnifiedAgainstStatement; ///
213
+ return metavariableNodeUnifiedAgainstStatementNode;
214
+ }
215
+ },
216
+ {
217
+ key: "unifyTermVariableNodeAgainstTermNode",
218
+ value: function unifyTermVariableNodeAgainstTermNode(termVariableNodeA, termNodeB, substitutions, localContextA, localContextB, unifyAhead) {
219
+ var termVariableNodeUnifiedAgainstTermNode;
220
+ var variableNodeA = termVariableNodeA, termUnifiedAgainstVariable = (0, _variableAgainstTerm.default)(variableNodeA, termNodeB, substitutions, localContextA, localContextB, unifyAhead);
221
+ termVariableNodeUnifiedAgainstTermNode = termUnifiedAgainstVariable; ///
222
+ return termVariableNodeUnifiedAgainstTermNode;
223
+ }
224
+ }
225
+ ]);
226
+ return MetaLevelUnifier;
227
+ }(_unifier.default);
228
+ var metaLevelUnifier = new MetaLevelUnifier();
229
+ var _default = metaLevelUnifier;
230
+
231
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmaWVyL21ldGFMZXZlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFVuaWZpZXIgZnJvbSBcIi4uL3VuaWZpZXJcIjtcbmltcG9ydCB1bmlmeVZhcmlhYmxlQWdhaW5zdFRlcm0gZnJvbSBcIi4uL3VuaWZ5L3ZhcmlhYmxlQWdhaW5zdFRlcm1cIjtcbmltcG9ydCB1bmlmeU1ldGF2YXJpYWJsZUFnYWluc3RTdGF0ZW1lbnQgZnJvbSBcIi4uL3VuaWZ5L21ldGF2YXJpYWJsZUFnYWluc3RTdGF0ZW1lbnRcIjtcblxuaW1wb3J0IHsgdW5pZnkgfSBmcm9tIFwiLi4vdW5pZmllclwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm0hXCIpLFxuICAgICAgc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudCFcIiksXG4gICAgICBub25UZXJtaW5hbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi8qXCIpLFxuICAgICAgdGVybVZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm0vdmFyaWFibGUhXCIpLFxuICAgICAgc3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC9zdWJzdGl0dXRpb24hXCIpLFxuICAgICAgc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC9tZXRhdmFyaWFibGUhXCIpO1xuXG5jbGFzcyBNZXRhTGV2ZWxVbmlmaWVyIGV4dGVuZHMgVW5pZmllciB7XG4gIHVuaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpIHtcbiAgICBsZXQgbm9uVGVybWluYWxOb2RlVW5pZmllZDtcblxuICAgIGNvbnN0IG5vZGVRdWVyeU1hcHMgPSBbXG4gICAgICB7XG4gICAgICAgIG5vZGVRdWVyeUE6IHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVRdWVyeSxcbiAgICAgICAgbm9kZVF1ZXJ5Qjogc3RhdGVtZW50Tm9kZVF1ZXJ5LFxuICAgICAgICB1bmlmeTogKG5vZGVBLCBub2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0QiwgdW5pZnlBaGVhZCkgPT4ge1xuICAgICAgICAgIGxldCBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZUEgPSBub25UZXJtaW5hbE5vZGVBLCAgLy8vXG4gICAgICAgICAgICAgICAgc3RhdGVtZW50Tm9kZUIgPSBub2RlQiwgLy8vXG4gICAgICAgICAgICAgICAgc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZUEgPSBub2RlQSwgLy8vXG4gICAgICAgICAgICAgICAgc3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZUEgPSBzdGF0ZW1lbnRTdWJzdGl0dXRpb25Ob2RlUXVlcnkoc3RhdGVtZW50Tm9kZUEpLFxuICAgICAgICAgICAgICAgIG1ldGF2YXJpYWJsZU5vZGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudE5vZGUgPVxuXG4gICAgICAgICAgICAgICAgICB0aGlzLnVuaWZ5U3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZUFnYWluc3RTdGF0ZW1lbnROb2RlKHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVBLCBzdGF0ZW1lbnRTdWJzdGl0dXRpb25Ob2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9IG1ldGF2YXJpYWJsZU5vZGVVbmlmaWVkQWdhaW5zdFN0YXRlbWVudE5vZGU7ICAvLy9cblxuICAgICAgICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBub2RlUXVlcnlBOiB0ZXJtVmFyaWFibGVOb2RlUXVlcnksXG4gICAgICAgIG5vZGVRdWVyeUI6IHRlcm1Ob2RlUXVlcnksXG4gICAgICAgIHVuaWZ5OiAobm9kZUEsIG5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB1bmlmeUFoZWFkKSA9PiB7XG4gICAgICAgICAgbGV0IG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG5cbiAgICAgICAgICBjb25zdCB0ZXJtTm9kZUIgPSBub2RlQiwgIC8vL1xuICAgICAgICAgICAgICAgIHRlcm1WYXJpYWJsZU5vZGVBID0gbm9kZUEsICAvLy9cbiAgICAgICAgICAgICAgICB0ZXJtVmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RUZXJtTm9kZSA9XG5cbiAgICAgICAgICAgICAgICAgIHRoaXMudW5pZnlUZXJtVmFyaWFibGVOb2RlQWdhaW5zdFRlcm1Ob2RlKHRlcm1WYXJpYWJsZU5vZGVBLCB0ZXJtTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9IHRlcm1WYXJpYWJsZU5vZGVVbmlmaWVkQWdhaW5zdFRlcm1Ob2RlOyAgLy8vXG5cbiAgICAgICAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVW5pZmllZDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbm9kZVF1ZXJ5QTogbm9uVGVybWluYWxOb2RlUXVlcnksXG4gICAgICAgIG5vZGVRdWVyeUI6IG5vblRlcm1pbmFsTm9kZVF1ZXJ5LFxuICAgICAgICB1bmlmeTogKG5vZGVBLCBub2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0QiwgdW5pZnlBaGVhZCkgPT4ge1xuICAgICAgICAgIGxldCBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IG5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUI7IC8vL1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9XG5cbiAgICAgICAgICAgIHN1cGVyLnVuaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdO1xuXG4gICAgY29uc3Qgbm9kZXNVbmlmaWVkID0gdW5pZnkobm9kZVF1ZXJ5TWFwcywgbm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0QiwgdW5pZnlBaGVhZCk7XG5cbiAgICBub25UZXJtaW5hbE5vZGVVbmlmaWVkID0gbm9kZXNVbmlmaWVkOyAgLy8vXG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVW5pZmllZDtcbiAgfVxuXG4gIHVuaWZ5U3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZUFnYWluc3RTdGF0ZW1lbnROb2RlKHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVBLCBzdGF0ZW1lbnRTdWJzdGl0dXRpb25Ob2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpIHtcbiAgICBsZXQgbWV0YXZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50Tm9kZTtcblxuICAgIGNvbnN0IHN1YnN0aXR1dGlvbk5vZGUgPSBzdGF0ZW1lbnRTdWJzdGl0dXRpb25Ob2RlQSwgIC8vL1xuICAgICAgICAgIG1ldGF2YXJpYWJsZU5vZGVBID0gc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZUEsIC8vL1xuICAgICAgICAgIG1ldGF2YXJpYWJsZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50ID0gdW5pZnlNZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50KG1ldGF2YXJpYWJsZU5vZGVBLCBzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9uTm9kZSwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0QiwgdW5pZnlBaGVhZCk7XG5cbiAgICBtZXRhdmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RTdGF0ZW1lbnROb2RlID0gbWV0YXZhcmlhYmxlVW5pZmllZEFnYWluc3RTdGF0ZW1lbnQ7ICAvLy9cblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RTdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgdW5pZnlUZXJtVmFyaWFibGVOb2RlQWdhaW5zdFRlcm1Ob2RlKHRlcm1WYXJpYWJsZU5vZGVBLCB0ZXJtTm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHVuaWZ5QWhlYWQpIHtcbiAgICBsZXQgdGVybVZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0VGVybU5vZGU7XG5cbiAgICBjb25zdCB2YXJpYWJsZU5vZGVBID0gdGVybVZhcmlhYmxlTm9kZUEsIC8vL1xuICAgICAgICAgIHRlcm1VbmlmaWVkQWdhaW5zdFZhcmlhYmxlID0gdW5pZnlWYXJpYWJsZUFnYWluc3RUZXJtKHZhcmlhYmxlTm9kZUEsIHRlcm1Ob2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0QiwgdW5pZnlBaGVhZCk7XG5cbiAgICB0ZXJtVmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RUZXJtTm9kZSA9IHRlcm1VbmlmaWVkQWdhaW5zdFZhcmlhYmxlOyAgLy8vXG5cbiAgICByZXR1cm4gdGVybVZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0VGVybU5vZGU7XG4gIH1cbn1cblxuY29uc3QgbWV0YUxldmVsVW5pZmllciA9IG5ldyBNZXRhTGV2ZWxVbmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IG1ldGFMZXZlbFVuaWZpZXI7XG4iXSwibmFtZXMiOlsidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm5vblRlcm1pbmFsTm9kZVF1ZXJ5IiwidGVybVZhcmlhYmxlTm9kZVF1ZXJ5Iiwic3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZVF1ZXJ5Iiwic3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwiTWV0YUxldmVsVW5pZmllciIsInVuaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJzdWJzdGl0dXRpb25zIiwibG9jYWxDb250ZXh0QSIsImxvY2FsQ29udGV4dEIiLCJ1bmlmeUFoZWFkIiwibm9uVGVybWluYWxOb2RlVW5pZmllZCIsIm5vZGVRdWVyeU1hcHMiLCJub2RlUXVlcnlBIiwibm9kZVF1ZXJ5QiIsInVuaWZ5Iiwibm9kZUEiLCJub2RlQiIsInN0YXRlbWVudE5vZGVBIiwic3RhdGVtZW50Tm9kZUIiLCJzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlQSIsInN0YXRlbWVudFN1YnN0aXR1dGlvbk5vZGVBIiwibWV0YXZhcmlhYmxlTm9kZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50Tm9kZSIsInVuaWZ5U3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZUFnYWluc3RTdGF0ZW1lbnROb2RlIiwidGVybU5vZGVCIiwidGVybVZhcmlhYmxlTm9kZUEiLCJ0ZXJtVmFyaWFibGVOb2RlVW5pZmllZEFnYWluc3RUZXJtTm9kZSIsInVuaWZ5VGVybVZhcmlhYmxlTm9kZUFnYWluc3RUZXJtTm9kZSIsIm5vZGVzVW5pZmllZCIsInN1YnN0aXR1dGlvbk5vZGUiLCJtZXRhdmFyaWFibGVOb2RlQSIsIm1ldGF2YXJpYWJsZVVuaWZpZWRBZ2FpbnN0U3RhdGVtZW50IiwidW5pZnlNZXRhdmFyaWFibGVBZ2FpbnN0U3RhdGVtZW50IiwidmFyaWFibGVOb2RlQSIsInRlcm1VbmlmaWVkQWdhaW5zdFZhcmlhYmxlIiwidW5pZnlWYXJpYWJsZUFnYWluc3RUZXJtIiwiVW5pZmllciIsIm1ldGFMZXZlbFVuaWZpZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQTRHQTs7O2VBQUE7OzsrREExR29COzBFQUNpQjttRkFDUztxQkFHcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFCLElBQU1BLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxXQUMxQkMscUJBQXFCRCxJQUFBQSxnQkFBUyxFQUFDLGdCQUMvQkUsdUJBQXVCRixJQUFBQSxnQkFBUyxFQUFDLE9BQ2pDRyx3QkFBd0JILElBQUFBLGdCQUFTLEVBQUMsb0JBQ2xDSSxpQ0FBaUNKLElBQUFBLGdCQUFTLEVBQUMsNkJBQzNDSyxpQ0FBaUNMLElBQUFBLGdCQUFTLEVBQUM7QUFFakQsSUFBQSxBQUFNTSxpQ0FBRCxBQUFMO2NBQU1BO2FBQUFBO2dDQUFBQTtpQ0FBQUE7O2tCQUFBQTs7WUFDSkMsS0FBQUE7bUJBQUFBLFNBQUFBLHFCQUFxQkMsZ0JBQWdCLEVBQUVDLGdCQUFnQixFQUFFQyxhQUFhLEVBQUVDLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxVQUFVOztnQkFDOUcsSUFBSUM7Z0JBRUosSUFBTUMsZ0JBQWdCO29CQUNwQjt3QkFDRUMsWUFBWVg7d0JBQ1pZLFlBQVloQjt3QkFDWmlCLE9BQU8sU0FBQ0MsT0FBT0MsT0FBT1YsZUFBZUMsZUFBZUMsZUFBZUM7NEJBQ2pFLElBQUlDOzRCQUVKLElBQU1PLGlCQUFpQmIsa0JBQ2pCYyxpQkFBaUJGLE9BQ2pCRyw2QkFBNkJKLE9BQzdCSyw2QkFBNkJwQiwrQkFBK0JpQixpQkFDNURJLDhDQUVFLE1BQUtDLGtEQUFrRCxDQUFDSCw0QkFBNEJDLDRCQUE0QkYsZ0JBQWdCWixlQUFlQyxlQUFlQyxlQUFlQzs0QkFFckxDLHlCQUF5QlcsNkNBQThDLEdBQUc7NEJBRTFFLE9BQU9YO3dCQUNUO29CQUNGO29CQUNBO3dCQUNFRSxZQUFZYjt3QkFDWmMsWUFBWWxCO3dCQUNabUIsT0FBTyxTQUFDQyxPQUFPQyxPQUFPVixlQUFlQyxlQUFlQyxlQUFlQzs0QkFDakUsSUFBSUM7NEJBRUosSUFBTWEsWUFBWVAsT0FDWlEsb0JBQW9CVCxPQUNwQlUseUNBRUUsTUFBS0Msb0NBQW9DLENBQUNGLG1CQUFtQkQsV0FBV2pCLGVBQWVDLGVBQWVDLGVBQWVDOzRCQUU3SEMseUJBQXlCZSx3Q0FBeUMsR0FBRzs0QkFFckUsT0FBT2Y7d0JBQ1Q7b0JBQ0Y7b0JBQ0E7d0JBQ0VFLFlBQVlkO3dCQUNaZSxZQUFZZjt3QkFDWmdCLE9BQU8sU0FBQ0MsT0FBT0MsT0FBT1YsZUFBZUMsZUFBZUMsZUFBZUM7NEJBQ2pFLElBQUlDOzRCQUVKLElBQU1OLHFCQUFtQlcsT0FDbkJWLHFCQUFtQlcsT0FBTyxHQUFHOzRCQUVuQ04seUJBRUUsdUJBcEROUiw2QkFvRFlDLDJDQUFxQkMsb0JBQWtCQyxvQkFBa0JDLGVBQWVDLGVBQWVDLGVBQWVDOzRCQUU5RyxPQUFPQzt3QkFDVDtvQkFDRjtpQkFDRDtnQkFFRCxJQUFNaUIsZUFBZWIsSUFBQUEsY0FBSyxFQUFDSCxlQUFlUCxrQkFBa0JDLGtCQUFrQkMsZUFBZUMsZUFBZUMsZUFBZUM7Z0JBRTNIQyx5QkFBeUJpQixjQUFlLEdBQUc7Z0JBRTNDLE9BQU9qQjtZQUNUOzs7WUFFQVksS0FBQUE7bUJBQUFBLFNBQUFBLG1EQUFtREgsMEJBQTBCLEVBQUVDLDBCQUEwQixFQUFFRixjQUFjLEVBQUVaLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxhQUFhLEVBQUVDLFVBQVU7Z0JBQ2hMLElBQUlZO2dCQUVKLElBQU1PLG1CQUFtQlIsNEJBQ25CUyxvQkFBb0JWLDRCQUNwQlcsc0NBQXNDQyxJQUFBQSxxQ0FBaUMsRUFBQ0YsbUJBQW1CWCxnQkFBZ0JVLGtCQUFrQnRCLGVBQWVDLGVBQWVDLGVBQWVDO2dCQUVoTFksOENBQThDUyxxQ0FBc0MsR0FBRztnQkFFdkYsT0FBT1Q7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxxQ0FBcUNGLGlCQUFpQixFQUFFRCxTQUFTLEVBQUVqQixhQUFhLEVBQUVDLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxVQUFVO2dCQUN4SCxJQUFJZ0I7Z0JBRUosSUFBTU8sZ0JBQWdCUixtQkFDaEJTLDZCQUE2QkMsSUFBQUEsNEJBQXdCLEVBQUNGLGVBQWVULFdBQVdqQixlQUFlQyxlQUFlQyxlQUFlQztnQkFFbklnQix5Q0FBeUNRLDRCQUE2QixHQUFHO2dCQUV6RSxPQUFPUjtZQUNUOzs7V0F2Rkl2QjtFQUF5QmlDLGdCQUFPO0FBMEZ0QyxJQUFNQyxtQkFBbUIsSUFBSWxDO0lBRTdCLFdBQWVrQyJ9
@@ -0,0 +1,231 @@
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 _default;
9
+ }
10
+ });
11
+ var _unifier = /*#__PURE__*/ _interop_require_wildcard(require("../unifier"));
12
+ var _argumentAgainstArgument = /*#__PURE__*/ _interop_require_default(require("../unify/argumentAgainstArgument"));
13
+ var _statementAgainstMetaType = /*#__PURE__*/ _interop_require_default(require("../unify/statementAgainstMetaType"));
14
+ var _query = require("../utilities/query");
15
+ function _assert_this_initialized(self) {
16
+ if (self === void 0) {
17
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
18
+ }
19
+ return self;
20
+ }
21
+ function _call_super(_this, derived, args) {
22
+ derived = _get_prototype_of(derived);
23
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
24
+ }
25
+ function _class_call_check(instance, Constructor) {
26
+ if (!(instance instanceof Constructor)) {
27
+ throw new TypeError("Cannot call a class as a function");
28
+ }
29
+ }
30
+ function _defineProperties(target, props) {
31
+ for(var i = 0; i < props.length; i++){
32
+ var descriptor = props[i];
33
+ descriptor.enumerable = descriptor.enumerable || false;
34
+ descriptor.configurable = true;
35
+ if ("value" in descriptor) descriptor.writable = true;
36
+ Object.defineProperty(target, descriptor.key, descriptor);
37
+ }
38
+ }
39
+ function _create_class(Constructor, protoProps, staticProps) {
40
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
41
+ if (staticProps) _defineProperties(Constructor, staticProps);
42
+ return Constructor;
43
+ }
44
+ function _get(target, property, receiver) {
45
+ if (typeof Reflect !== "undefined" && Reflect.get) {
46
+ _get = Reflect.get;
47
+ } else {
48
+ _get = function get(target, property, receiver) {
49
+ var base = _super_prop_base(target, property);
50
+ if (!base) return;
51
+ var desc = Object.getOwnPropertyDescriptor(base, property);
52
+ if (desc.get) {
53
+ return desc.get.call(receiver || target);
54
+ }
55
+ return desc.value;
56
+ };
57
+ }
58
+ return _get(target, property, receiver || target);
59
+ }
60
+ function _get_prototype_of(o) {
61
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
62
+ return o.__proto__ || Object.getPrototypeOf(o);
63
+ };
64
+ return _get_prototype_of(o);
65
+ }
66
+ function _inherits(subClass, superClass) {
67
+ if (typeof superClass !== "function" && superClass !== null) {
68
+ throw new TypeError("Super expression must either be null or a function");
69
+ }
70
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
71
+ constructor: {
72
+ value: subClass,
73
+ writable: true,
74
+ configurable: true
75
+ }
76
+ });
77
+ if (superClass) _set_prototype_of(subClass, superClass);
78
+ }
79
+ function _interop_require_default(obj) {
80
+ return obj && obj.__esModule ? obj : {
81
+ default: obj
82
+ };
83
+ }
84
+ function _getRequireWildcardCache(nodeInterop) {
85
+ if (typeof WeakMap !== "function") return null;
86
+ var cacheBabelInterop = new WeakMap();
87
+ var cacheNodeInterop = new WeakMap();
88
+ return (_getRequireWildcardCache = function(nodeInterop) {
89
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
90
+ })(nodeInterop);
91
+ }
92
+ function _interop_require_wildcard(obj, nodeInterop) {
93
+ if (!nodeInterop && obj && obj.__esModule) {
94
+ return obj;
95
+ }
96
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
97
+ return {
98
+ default: obj
99
+ };
100
+ }
101
+ var cache = _getRequireWildcardCache(nodeInterop);
102
+ if (cache && cache.has(obj)) {
103
+ return cache.get(obj);
104
+ }
105
+ var newObj = {
106
+ __proto__: null
107
+ };
108
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
109
+ for(var key in obj){
110
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
111
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
112
+ if (desc && (desc.get || desc.set)) {
113
+ Object.defineProperty(newObj, key, desc);
114
+ } else {
115
+ newObj[key] = obj[key];
116
+ }
117
+ }
118
+ }
119
+ newObj.default = obj;
120
+ if (cache) {
121
+ cache.set(obj, newObj);
122
+ }
123
+ return newObj;
124
+ }
125
+ function _possible_constructor_return(self, call) {
126
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
127
+ return call;
128
+ }
129
+ return _assert_this_initialized(self);
130
+ }
131
+ function _set_prototype_of(o, p) {
132
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
133
+ o.__proto__ = p;
134
+ return o;
135
+ };
136
+ return _set_prototype_of(o, p);
137
+ }
138
+ function _super_prop_base(object, property) {
139
+ while(!Object.prototype.hasOwnProperty.call(object, property)){
140
+ object = _get_prototype_of(object);
141
+ if (object === null) break;
142
+ }
143
+ return object;
144
+ }
145
+ function _type_of(obj) {
146
+ "@swc/helpers - typeof";
147
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
148
+ }
149
+ function _is_native_reflect_construct() {
150
+ try {
151
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
152
+ } catch (_) {}
153
+ return (_is_native_reflect_construct = function() {
154
+ return !!result;
155
+ })();
156
+ }
157
+ var argumentNodeQuery = (0, _query.nodeQuery)("/argument!"), metaTypeNodeQuery = (0, _query.nodeQuery)("/metaType!"), statementNodeQuery = (0, _query.nodeQuery)("/statement!"), nonTerminalNodeQuery = (0, _query.nodeQuery)("/*");
158
+ var StatementAgainstCombinatorUnifier = /*#__PURE__*/ function(Unifier) {
159
+ _inherits(StatementAgainstCombinatorUnifier, Unifier);
160
+ function StatementAgainstCombinatorUnifier() {
161
+ _class_call_check(this, StatementAgainstCombinatorUnifier);
162
+ return _call_super(this, StatementAgainstCombinatorUnifier, arguments);
163
+ }
164
+ _create_class(StatementAgainstCombinatorUnifier, [
165
+ {
166
+ key: "unifyNonTerminalNode",
167
+ value: function unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext, unifyAhead) {
168
+ var _this = this;
169
+ var nonTerminalNodeUnified;
170
+ var nodeQueryMaps = [
171
+ {
172
+ nodeQueryA: statementNodeQuery,
173
+ nodeQueryB: metaTypeNodeQuery,
174
+ unify: function(nodeA, nodeB, localContext, unifyAhead) {
175
+ var nonTerminalNodeUnified;
176
+ var metaTypeNodeB = nodeB, statementNodeA = nodeA, statementUnifiedAgainstMetaType = _this.unifyMetaArgumentStatementAgainstMetaType(statementNodeA, metaTypeNodeB, localContext, unifyAhead);
177
+ nonTerminalNodeUnified = statementUnifiedAgainstMetaType; ///
178
+ return nonTerminalNodeUnified;
179
+ }
180
+ },
181
+ {
182
+ nodeQueryA: argumentNodeQuery,
183
+ nodeQueryB: argumentNodeQuery,
184
+ unify: function(nodeA, nodeB, localContext, unifyAhead) {
185
+ var nonTerminalNodeUnified;
186
+ var argumentNodeA = nodeA, argumentNodeB = nodeB, argumentNodeUnifiedAgainstArgumentNode = _this.unifyArgumentNodeAgainstArgumentNode(argumentNodeA, argumentNodeB, localContext, unifyAhead);
187
+ nonTerminalNodeUnified = argumentNodeUnifiedAgainstArgumentNode; ///
188
+ return nonTerminalNodeUnified;
189
+ }
190
+ },
191
+ {
192
+ nodeQueryA: nonTerminalNodeQuery,
193
+ nodeQueryB: nonTerminalNodeQuery,
194
+ unify: function(nodeA, nodeB, localContext, unifyAhead) {
195
+ var nonTerminalNodeUnified;
196
+ var _$nonTerminalNodeA = nodeA, _$nonTerminalNodeB = nodeB; ///
197
+ nonTerminalNodeUnified = _get(_get_prototype_of(StatementAgainstCombinatorUnifier.prototype), "unifyNonTerminalNode", _this).call(_this, _$nonTerminalNodeA, _$nonTerminalNodeB, localContext, unifyAhead);
198
+ return nonTerminalNodeUnified;
199
+ }
200
+ }
201
+ ];
202
+ var nodesUnified = (0, _unifier.unify)(nodeQueryMaps, nonTerminalNodeA, nonTerminalNodeB, localContext, unifyAhead);
203
+ nonTerminalNodeUnified = nodesUnified; ///
204
+ return nonTerminalNodeUnified;
205
+ }
206
+ },
207
+ {
208
+ key: "unifyMetaArgumentStatementAgainstMetaType",
209
+ value: function unifyMetaArgumentStatementAgainstMetaType(statementNodeA, metaTypeNodeB, localContext, unifyAhead) {
210
+ var statementUnifiedAgainstMetaType;
211
+ var verifyStatement = this.verifyStatement, metaTypeNode = metaTypeNodeB, statementNode = statementNodeA; ///
212
+ statementUnifiedAgainstMetaType = (0, _statementAgainstMetaType.default)(statementNode, metaTypeNode, localContext, unifyAhead, verifyStatement);
213
+ return statementUnifiedAgainstMetaType;
214
+ }
215
+ },
216
+ {
217
+ key: "unifyArgumentNodeAgainstArgumentNode",
218
+ value: function unifyArgumentNodeAgainstArgumentNode(argumentNodeA, argumentNodeB, localContext, unifyAhead) {
219
+ var argumentNodeUnifiedAgainstArgumentNode;
220
+ var argumentUnifiedAgainstArgument = (0, _argumentAgainstArgument.default)(argumentNodeA, argumentNodeB, localContext, unifyAhead);
221
+ argumentNodeUnifiedAgainstArgumentNode = argumentUnifiedAgainstArgument; ///
222
+ return argumentNodeUnifiedAgainstArgumentNode;
223
+ }
224
+ }
225
+ ]);
226
+ return StatementAgainstCombinatorUnifier;
227
+ }(_unifier.default);
228
+ var statementAgainstCombinatorUnifier = new StatementAgainstCombinatorUnifier();
229
+ var _default = statementAgainstCombinatorUnifier;
230
+
231
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmaWVyL3N0YXRlbWVudEFnYWluc3RDb21iaW5hdG9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgVW5pZmllciBmcm9tIFwiLi4vdW5pZmllclwiO1xuaW1wb3J0IHVuaWZ5QXJndW1lbnRBZ2FpbnN0QXJndW1lbnQgZnJvbSBcIi4uL3VuaWZ5L2FyZ3VtZW50QWdhaW5zdEFyZ3VtZW50XCI7XG5pbXBvcnQgdW5pZnlTdGF0ZW1lbnRBZ2FpbnN0TWV0YVR5cGUgZnJvbSBcIi4uL3VuaWZ5L3N0YXRlbWVudEFnYWluc3RNZXRhVHlwZVwiO1xuXG5pbXBvcnQgeyB1bmlmeSB9IGZyb20gXCIuLi91bmlmaWVyXCI7XG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGFyZ3VtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50IVwiKSxcbiAgICAgIG1ldGFUeXBlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFUeXBlIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9zdGF0ZW1lbnQhXCIpLFxuICAgICAgbm9uVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvKlwiKTtcblxuY2xhc3MgU3RhdGVtZW50QWdhaW5zdENvbWJpbmF0b3JVbmlmaWVyIGV4dGVuZHMgVW5pZmllciB7XG4gIHVuaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCkge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgY29uc3Qgbm9kZVF1ZXJ5TWFwcyA9IFtcbiAgICAgIHtcbiAgICAgICAgbm9kZVF1ZXJ5QTogc3RhdGVtZW50Tm9kZVF1ZXJ5LFxuICAgICAgICBub2RlUXVlcnlCOiBtZXRhVHlwZU5vZGVRdWVyeSxcbiAgICAgICAgdW5pZnk6IChub2RlQSwgbm9kZUIsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCkgPT4ge1xuICAgICAgICAgIGxldCBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgICAgICAgY29uc3QgbWV0YVR5cGVOb2RlQiA9IG5vZGVCLCAgLy8vXG4gICAgICAgICAgICAgICAgc3RhdGVtZW50Tm9kZUEgPSBub2RlQSwgLy8vXG4gICAgICAgICAgICAgICAgc3RhdGVtZW50VW5pZmllZEFnYWluc3RNZXRhVHlwZSA9XG5cbiAgICAgICAgICAgICAgICAgIHRoaXMudW5pZnlNZXRhQXJndW1lbnRTdGF0ZW1lbnRBZ2FpbnN0TWV0YVR5cGUoc3RhdGVtZW50Tm9kZUEsIG1ldGFUeXBlTm9kZUIsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCk7XG5cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVVbmlmaWVkID0gc3RhdGVtZW50VW5pZmllZEFnYWluc3RNZXRhVHlwZTsgLy8vXG5cbiAgICAgICAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVW5pZmllZDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbm9kZVF1ZXJ5QTogYXJndW1lbnROb2RlUXVlcnksXG4gICAgICAgIG5vZGVRdWVyeUI6IGFyZ3VtZW50Tm9kZVF1ZXJ5LFxuICAgICAgICB1bmlmeTogKG5vZGVBLCBub2RlQiwgbG9jYWxDb250ZXh0LCB1bmlmeUFoZWFkKSA9PiB7XG4gICAgICAgICAgbGV0IG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG5cbiAgICAgICAgICBjb25zdCBhcmd1bWVudE5vZGVBID0gbm9kZUEsICAvLy9cbiAgICAgICAgICAgICAgICBhcmd1bWVudE5vZGVCID0gbm9kZUIsICAvLy9cbiAgICAgICAgICAgICAgICBhcmd1bWVudE5vZGVVbmlmaWVkQWdhaW5zdEFyZ3VtZW50Tm9kZSA9XG5cbiAgICAgICAgICAgICAgICAgIHRoaXMudW5pZnlBcmd1bWVudE5vZGVBZ2FpbnN0QXJndW1lbnROb2RlKGFyZ3VtZW50Tm9kZUEsIGFyZ3VtZW50Tm9kZUIsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCk7XG5cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVVbmlmaWVkID0gYXJndW1lbnROb2RlVW5pZmllZEFnYWluc3RBcmd1bWVudE5vZGU7IC8vL1xuXG4gICAgICAgICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5vZGVRdWVyeUE6IG5vblRlcm1pbmFsTm9kZVF1ZXJ5LFxuICAgICAgICBub2RlUXVlcnlCOiBub25UZXJtaW5hbE5vZGVRdWVyeSxcbiAgICAgICAgdW5pZnk6IChub2RlQSwgbm9kZUIsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCkgPT4ge1xuICAgICAgICAgIGxldCBub25UZXJtaW5hbE5vZGVVbmlmaWVkO1xuXG4gICAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IG5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUI7IC8vL1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9XG5cbiAgICAgICAgICAgIHN1cGVyLnVuaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCk7XG5cbiAgICAgICAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVW5pZmllZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIF07XG5cbiAgICBjb25zdCBub2Rlc1VuaWZpZWQgPSB1bmlmeShub2RlUXVlcnlNYXBzLCBub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBsb2NhbENvbnRleHQsIHVuaWZ5QWhlYWQpO1xuXG4gICAgbm9uVGVybWluYWxOb2RlVW5pZmllZCA9IG5vZGVzVW5pZmllZDsgIC8vL1xuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeU1ldGFBcmd1bWVudFN0YXRlbWVudEFnYWluc3RNZXRhVHlwZShzdGF0ZW1lbnROb2RlQSwgbWV0YVR5cGVOb2RlQiwgbG9jYWxDb250ZXh0LCB1bmlmeUFoZWFkKSB7XG4gICAgbGV0IHN0YXRlbWVudFVuaWZpZWRBZ2FpbnN0TWV0YVR5cGU7XG5cbiAgICBjb25zdCB7IHZlcmlmeVN0YXRlbWVudCB9ID0gdGhpcyxcbiAgICAgICAgICBtZXRhVHlwZU5vZGUgPSBtZXRhVHlwZU5vZGVCLCAvLy9cbiAgICAgICAgICBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZUE7ICAvLy9cblxuICAgIHN0YXRlbWVudFVuaWZpZWRBZ2FpbnN0TWV0YVR5cGUgPSB1bmlmeVN0YXRlbWVudEFnYWluc3RNZXRhVHlwZShzdGF0ZW1lbnROb2RlLCBtZXRhVHlwZU5vZGUsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCwgdmVyaWZ5U3RhdGVtZW50KTtcblxuICAgIHJldHVybiBzdGF0ZW1lbnRVbmlmaWVkQWdhaW5zdE1ldGFUeXBlO1xuICB9XG5cbiAgdW5pZnlBcmd1bWVudE5vZGVBZ2FpbnN0QXJndW1lbnROb2RlKGFyZ3VtZW50Tm9kZUEsIGFyZ3VtZW50Tm9kZUIsIGxvY2FsQ29udGV4dCwgdW5pZnlBaGVhZCkge1xuICAgIGxldCBhcmd1bWVudE5vZGVVbmlmaWVkQWdhaW5zdEFyZ3VtZW50Tm9kZTtcblxuICAgIGNvbnN0IGFyZ3VtZW50VW5pZmllZEFnYWluc3RBcmd1bWVudCA9IHVuaWZ5QXJndW1lbnRBZ2FpbnN0QXJndW1lbnQoYXJndW1lbnROb2RlQSwgYXJndW1lbnROb2RlQiwgbG9jYWxDb250ZXh0LCB1bmlmeUFoZWFkKTtcblxuICAgIGFyZ3VtZW50Tm9kZVVuaWZpZWRBZ2FpbnN0QXJndW1lbnROb2RlID0gYXJndW1lbnRVbmlmaWVkQWdhaW5zdEFyZ3VtZW50OyAvLy9cblxuICAgIHJldHVybiBhcmd1bWVudE5vZGVVbmlmaWVkQWdhaW5zdEFyZ3VtZW50Tm9kZTtcbiAgfVxufVxuXG5jb25zdCBzdGF0ZW1lbnRBZ2FpbnN0Q29tYmluYXRvclVuaWZpZXIgPSBuZXcgU3RhdGVtZW50QWdhaW5zdENvbWJpbmF0b3JVbmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IHN0YXRlbWVudEFnYWluc3RDb21iaW5hdG9yVW5pZmllcjtcbiJdLCJuYW1lcyI6WyJhcmd1bWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFUeXBlTm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9uVGVybWluYWxOb2RlUXVlcnkiLCJTdGF0ZW1lbnRBZ2FpbnN0Q29tYmluYXRvclVuaWZpZXIiLCJ1bmlmeU5vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZUEiLCJub25UZXJtaW5hbE5vZGVCIiwibG9jYWxDb250ZXh0IiwidW5pZnlBaGVhZCIsIm5vblRlcm1pbmFsTm9kZVVuaWZpZWQiLCJub2RlUXVlcnlNYXBzIiwibm9kZVF1ZXJ5QSIsIm5vZGVRdWVyeUIiLCJ1bmlmeSIsIm5vZGVBIiwibm9kZUIiLCJtZXRhVHlwZU5vZGVCIiwic3RhdGVtZW50Tm9kZUEiLCJzdGF0ZW1lbnRVbmlmaWVkQWdhaW5zdE1ldGFUeXBlIiwidW5pZnlNZXRhQXJndW1lbnRTdGF0ZW1lbnRBZ2FpbnN0TWV0YVR5cGUiLCJhcmd1bWVudE5vZGVBIiwiYXJndW1lbnROb2RlQiIsImFyZ3VtZW50Tm9kZVVuaWZpZWRBZ2FpbnN0QXJndW1lbnROb2RlIiwidW5pZnlBcmd1bWVudE5vZGVBZ2FpbnN0QXJndW1lbnROb2RlIiwibm9kZXNVbmlmaWVkIiwidmVyaWZ5U3RhdGVtZW50IiwibWV0YVR5cGVOb2RlIiwic3RhdGVtZW50Tm9kZSIsInVuaWZ5U3RhdGVtZW50QWdhaW5zdE1ldGFUeXBlIiwiYXJndW1lbnRVbmlmaWVkQWdhaW5zdEFyZ3VtZW50IiwidW5pZnlBcmd1bWVudEFnYWluc3RBcmd1bWVu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