@tuprolog/arg2p 0.10.2 → 0.11.2

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/2p-dsl-core.js CHANGED
@@ -1,98 +1,97 @@
1
- (function (root, factory) {
1
+ (function (factory) {
2
2
  if (typeof define === 'function' && define.amd)
3
3
  define(['exports', './kotlin-kotlin-stdlib.js', './2p-core.js', './2p-utils.js', './kt-math.js'], factory);
4
4
  else if (typeof exports === 'object')
5
5
  factory(module.exports, require('./kotlin-kotlin-stdlib.js'), require('./2p-core.js'), require('./2p-utils.js'), require('./kt-math.js'));
6
6
  else {
7
- if (typeof this['kotlin-kotlin-stdlib'] === 'undefined') {
7
+ if (typeof globalThis['kotlin-kotlin-stdlib'] === 'undefined') {
8
8
  throw new Error("Error loading module '2p-dsl-core'. Its dependency 'kotlin-kotlin-stdlib' was not found. Please, check whether 'kotlin-kotlin-stdlib' is loaded prior to '2p-dsl-core'.");
9
9
  }
10
- if (typeof this['2p-core'] === 'undefined') {
10
+ if (typeof globalThis['2p-core'] === 'undefined') {
11
11
  throw new Error("Error loading module '2p-dsl-core'. Its dependency '2p-core' was not found. Please, check whether '2p-core' is loaded prior to '2p-dsl-core'.");
12
12
  }
13
- if (typeof this['2p-utils'] === 'undefined') {
13
+ if (typeof globalThis['2p-utils'] === 'undefined') {
14
14
  throw new Error("Error loading module '2p-dsl-core'. Its dependency '2p-utils' was not found. Please, check whether '2p-utils' is loaded prior to '2p-dsl-core'.");
15
15
  }
16
- if (typeof this['kt-math'] === 'undefined') {
16
+ if (typeof globalThis['kt-math'] === 'undefined') {
17
17
  throw new Error("Error loading module '2p-dsl-core'. Its dependency 'kt-math' was not found. Please, check whether 'kt-math' is loaded prior to '2p-dsl-core'.");
18
18
  }
19
- root['2p-dsl-core'] = factory(typeof this['2p-dsl-core'] === 'undefined' ? {} : this['2p-dsl-core'], this['kotlin-kotlin-stdlib'], this['2p-core'], this['2p-utils'], this['kt-math']);
19
+ globalThis['2p-dsl-core'] = factory(typeof globalThis['2p-dsl-core'] === 'undefined' ? {} : globalThis['2p-dsl-core'], globalThis['kotlin-kotlin-stdlib'], globalThis['2p-core'], globalThis['2p-utils'], globalThis['kt-math']);
20
20
  }
21
- }(this, function (_, kotlin_kotlin, kotlin_it_unibo_tuprolog_core, kotlin_it_unibo_tuprolog_utils, kotlin_io_github_gciatto_kt_math) {
21
+ }(function (_, kotlin_kotlin, kotlin_it_unibo_tuprolog_core, kotlin_it_unibo_tuprolog_utils, kotlin_io_github_gciatto_kt_math) {
22
22
  'use strict';
23
23
  //region block: imports
24
- var THROW_CCE = kotlin_kotlin.$_$.y9;
25
- var LinkedHashMap_init_$Create$ = kotlin_kotlin.$_$.h;
26
- var protoOf = kotlin_kotlin.$_$.b6;
27
- var Unit_instance = kotlin_kotlin.$_$.s1;
28
- var toString = kotlin_kotlin.$_$.g6;
29
- var IllegalArgumentException_init_$Create$ = kotlin_kotlin.$_$.s;
24
+ var THROW_CCE = kotlin_kotlin.$_$.la;
25
+ var Unit_instance = kotlin_kotlin.$_$.k1;
26
+ var LinkedHashMap_init_$Create$ = kotlin_kotlin.$_$.f;
27
+ var protoOf = kotlin_kotlin.$_$.m6;
28
+ var toString = kotlin_kotlin.$_$.p6;
29
+ var IllegalArgumentException_init_$Create$ = kotlin_kotlin.$_$.q;
30
30
  var Term = kotlin_it_unibo_tuprolog_core.$_$.r2;
31
- var isInterface = kotlin_kotlin.$_$.r5;
31
+ var isInterface = kotlin_kotlin.$_$.e6;
32
32
  var TermConvertible = kotlin_it_unibo_tuprolog_core.$_$.u1;
33
- var getKClassFromExpression = kotlin_kotlin.$_$.b;
34
- var getKClass = kotlin_kotlin.$_$.c;
35
- var toString_0 = kotlin_kotlin.$_$.j1;
33
+ var getKClassFromExpression = kotlin_kotlin.$_$.d7;
34
+ var getKClass = kotlin_kotlin.$_$.e7;
35
+ var toString_0 = kotlin_kotlin.$_$.h1;
36
36
  var Companion_getInstance = kotlin_it_unibo_tuprolog_core.$_$.a1;
37
- var asIterable = kotlin_kotlin.$_$.c2;
38
- var assertItemsAreNotNull = kotlin_it_unibo_tuprolog_utils.$_$.q;
39
- var collectionSizeOrDefault = kotlin_kotlin.$_$.j2;
40
- var ArrayList_init_$Create$ = kotlin_kotlin.$_$.e;
41
- var assertItemsAreNotNull_0 = kotlin_it_unibo_tuprolog_utils.$_$.p;
42
- var map = kotlin_kotlin.$_$.v7;
43
- var assertItemsAreNotNull_1 = kotlin_it_unibo_tuprolog_utils.$_$.r;
44
- var Char = kotlin_kotlin.$_$.m9;
45
- var PrimitiveClasses_getInstance = kotlin_kotlin.$_$.p1;
37
+ var asIterable = kotlin_kotlin.$_$.u1;
38
+ var assertItemsAreNotNull = kotlin_it_unibo_tuprolog_utils.$_$.s;
39
+ var collectionSizeOrDefault = kotlin_kotlin.$_$.b2;
40
+ var ArrayList_init_$Create$ = kotlin_kotlin.$_$.c;
41
+ var assertItemsAreNotNull_0 = kotlin_it_unibo_tuprolog_utils.$_$.r;
42
+ var map = kotlin_kotlin.$_$.f8;
43
+ var assertItemsAreNotNull_1 = kotlin_it_unibo_tuprolog_utils.$_$.t;
44
+ var Char = kotlin_kotlin.$_$.z9;
45
+ var PrimitiveClasses_getInstance = kotlin_kotlin.$_$.j1;
46
46
  var BigInteger = kotlin_io_github_gciatto_kt_math.$_$.g;
47
47
  var BigDecimal = kotlin_io_github_gciatto_kt_math.$_$.f;
48
- var Sequence = kotlin_kotlin.$_$.y6;
49
- var Iterable = kotlin_kotlin.$_$.u1;
50
- var List = kotlin_kotlin.$_$.v1;
51
- var Set = kotlin_kotlin.$_$.y1;
52
- var Pair = kotlin_kotlin.$_$.w9;
53
- var Triple = kotlin_kotlin.$_$.aa;
54
- var Entry = kotlin_kotlin.$_$.w1;
55
- var Map = kotlin_kotlin.$_$.x1;
56
- var classMeta = kotlin_kotlin.$_$.f5;
57
- var setMetadataFor = kotlin_kotlin.$_$.c6;
58
- var VOID = kotlin_kotlin.$_$.d;
48
+ var Sequence = kotlin_kotlin.$_$.i7;
49
+ var Iterable = kotlin_kotlin.$_$.m1;
50
+ var KtList = kotlin_kotlin.$_$.n1;
51
+ var KtSet = kotlin_kotlin.$_$.q1;
52
+ var Pair = kotlin_kotlin.$_$.ja;
53
+ var Triple = kotlin_kotlin.$_$.na;
54
+ var Entry = kotlin_kotlin.$_$.o1;
55
+ var KtMap = kotlin_kotlin.$_$.p1;
56
+ var initMetadataForClass = kotlin_kotlin.$_$.x5;
57
+ var VOID = kotlin_kotlin.$_$.b;
59
58
  var Struct = kotlin_it_unibo_tuprolog_core.$_$.s1;
60
59
  var Scope = kotlin_it_unibo_tuprolog_core.$_$.r1;
61
- var interfaceMeta = kotlin_kotlin.$_$.o5;
60
+ var initMetadataForInterface = kotlin_kotlin.$_$.z5;
62
61
  var Companion_instance = kotlin_it_unibo_tuprolog_core.$_$.t;
63
62
  var Companion_instance_0 = kotlin_it_unibo_tuprolog_core.$_$.b1;
64
- var objectMeta = kotlin_kotlin.$_$.a6;
63
+ var initMetadataForCompanion = kotlin_kotlin.$_$.y5;
65
64
  var logicListFromFrom = kotlin_it_unibo_tuprolog_core.$_$.d;
66
65
  var logicListFromIterable = kotlin_it_unibo_tuprolog_core.$_$.b;
67
66
  var logicListFromSequence = kotlin_it_unibo_tuprolog_core.$_$.c;
68
- var plus = kotlin_kotlin.$_$.b4;
67
+ var plus = kotlin_kotlin.$_$.t3;
69
68
  var Tuple = kotlin_it_unibo_tuprolog_core.$_$.s2;
70
69
  var Companion_instance_1 = kotlin_it_unibo_tuprolog_core.$_$.z;
71
70
  var Companion_getInstance_0 = kotlin_it_unibo_tuprolog_core.$_$.v;
72
71
  var Var = kotlin_it_unibo_tuprolog_core.$_$.t2;
73
72
  var arrayConcat = kotlin_kotlin.$_$.a;
74
- var sequenceOf = kotlin_kotlin.$_$.b8;
75
- var copyToArray = kotlin_kotlin.$_$.r2;
76
- var listOf = kotlin_kotlin.$_$.k3;
73
+ var sequenceOf = kotlin_kotlin.$_$.l8;
74
+ var copyToArray = kotlin_kotlin.$_$.j2;
75
+ var listOf = kotlin_kotlin.$_$.c3;
77
76
  var Rule = kotlin_it_unibo_tuprolog_core.$_$.q1;
78
77
  var Directive = kotlin_it_unibo_tuprolog_core.$_$.j1;
79
78
  var Fact = kotlin_it_unibo_tuprolog_core.$_$.k1;
80
- var NumberTypeTester = kotlin_it_unibo_tuprolog_utils.$_$.i;
79
+ var NumberTypeTester = kotlin_it_unibo_tuprolog_utils.$_$.k;
81
80
  //endregion
82
81
  //region block: pre-declaration
83
82
  function copy(scope, $super) {
84
- scope = scope === VOID ? this.z1g() : scope;
85
- return $super === VOID ? this.a1h(scope) : $super.a1h.call(this, scope);
83
+ scope = scope === VOID ? this.a1g() : scope;
84
+ return $super === VOID ? this.b1g(scope) : $super.b1g.call(this, scope);
86
85
  }
87
- setMetadataFor(Termificator, 'Termificator', interfaceMeta);
88
- setMetadataFor(AbstractTermificator, 'AbstractTermificator', classMeta, VOID, [Termificator]);
86
+ initMetadataForInterface(Termificator, 'Termificator');
87
+ initMetadataForClass(AbstractTermificator, 'AbstractTermificator', VOID, VOID, [Termificator]);
89
88
  function convertToTerm(_this__u8e3s4) {
90
- return this.x1i().toTerm(_this__u8e3s4);
89
+ return this.l2x().toTerm(_this__u8e3s4);
91
90
  }
92
91
  function convertToSpecificSubTypeOfTerm(_this__u8e3s4, type, converter) {
93
92
  var t = this.convertToTerm(_this__u8e3s4);
94
93
  var tmp;
95
- if (type.p6(t)) {
94
+ if (type.c9(t)) {
96
95
  tmp = isInterface(t, Term) ? t : THROW_CCE();
97
96
  } else {
98
97
  if (isInterface(t, Struct)) {
@@ -103,311 +102,8 @@
103
102
  }
104
103
  return tmp;
105
104
  }
106
- setMetadataFor(BaseLogicProgrammingScope, 'BaseLogicProgrammingScope', interfaceMeta, VOID, [Scope]);
107
- setMetadataFor(Companion, 'Companion', objectMeta);
108
- function termPlus(_this__u8e3s4, other) {
109
- return this.structOf('+', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
110
- }
111
- function number(_this__u8e3s4, other) {
112
- return this.termPlus(this.convertToTerm(_this__u8e3s4), other);
113
- }
114
- function booleanPlus(_this__u8e3s4, other) {
115
- return this.termPlus(this.convertToTerm(_this__u8e3s4), other);
116
- }
117
- function charPlus(_this__u8e3s4, other) {
118
- return this.termPlus(this.convertToTerm(new Char(_this__u8e3s4)), other);
119
- }
120
- function termMinus(_this__u8e3s4, other) {
121
- return this.structOf('-', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
122
- }
123
- function numberMinus(_this__u8e3s4, other) {
124
- return this.termMinus(this.convertToTerm(_this__u8e3s4), other);
125
- }
126
- function booleanMinus(_this__u8e3s4, other) {
127
- return this.termMinus(this.convertToTerm(_this__u8e3s4), other);
128
- }
129
- function charMinus(_this__u8e3s4, other) {
130
- return this.termMinus(this.convertToTerm(new Char(_this__u8e3s4)), other);
131
- }
132
- function stringMinus(_this__u8e3s4, other) {
133
- return this.termMinus(this.convertToTerm(_this__u8e3s4), other);
134
- }
135
- function termTimes(_this__u8e3s4, other) {
136
- return this.structOf('*', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
137
- }
138
- function numberTimes(_this__u8e3s4, other) {
139
- return this.termTimes(this.convertToTerm(_this__u8e3s4), other);
140
- }
141
- function booleanTimes(_this__u8e3s4, other) {
142
- return this.termTimes(this.convertToTerm(_this__u8e3s4), other);
143
- }
144
- function charTimes(_this__u8e3s4, other) {
145
- return this.termTimes(this.convertToTerm(new Char(_this__u8e3s4)), other);
146
- }
147
- function stringTimes(_this__u8e3s4, other) {
148
- return this.termTimes(this.convertToTerm(_this__u8e3s4), other);
149
- }
150
- function termDiv(_this__u8e3s4, other) {
151
- return this.indicatorOf(this.convertToTerm(_this__u8e3s4), this.convertToTerm(other));
152
- }
153
- function numberDiv(_this__u8e3s4, other) {
154
- return this.termDiv(this.convertToTerm(_this__u8e3s4), other);
155
- }
156
- function booleanDiv(_this__u8e3s4, other) {
157
- return this.termDiv(this.convertToTerm(_this__u8e3s4), other);
158
- }
159
- function charDiv(_this__u8e3s4, other) {
160
- return this.termDiv(this.convertToTerm(new Char(_this__u8e3s4)), other);
161
- }
162
- function stringDiv(_this__u8e3s4, other) {
163
- return this.termDiv(this.convertToTerm(_this__u8e3s4), other);
164
- }
165
- function anyEqualsTo(_this__u8e3s4, other) {
166
- return this.structOf('=', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
167
- }
168
- function anyNotEqualsTo(_this__u8e3s4, other) {
169
- return this.structOf('\\=', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
170
- }
171
- function anyGreaterThan(_this__u8e3s4, other) {
172
- return this.structOf('>', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
173
- }
174
- function anyGreaterThanOrEqualsTo(_this__u8e3s4, other) {
175
- return this.structOf('>=', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
176
- }
177
- function anyNonLowerThan(_this__u8e3s4, other) {
178
- return this.anyGreaterThanOrEqualsTo(_this__u8e3s4, other);
179
- }
180
- function anyLowerThan(_this__u8e3s4, other) {
181
- return this.structOf('<', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
182
- }
183
- function anyLowerThanOrEqualsTo(_this__u8e3s4, other) {
184
- return this.structOf('=<', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
185
- }
186
- function anyNonGreaterThan(_this__u8e3s4, other) {
187
- return this.anyLowerThanOrEqualsTo(_this__u8e3s4, other);
188
- }
189
- function anyIntDiv(_this__u8e3s4, other) {
190
- return this.structOf('//', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
191
- }
192
- function termRem(_this__u8e3s4, other) {
193
- return this.structOf('rem', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
194
- }
195
- function numberRem(_this__u8e3s4, other) {
196
- return this.termRem(this.convertToTerm(_this__u8e3s4), other);
197
- }
198
- function booleanRem(_this__u8e3s4, other) {
199
- return this.termRem(this.convertToTerm(_this__u8e3s4), other);
200
- }
201
- function charRem(_this__u8e3s4, other) {
202
- return this.termRem(this.convertToTerm(new Char(_this__u8e3s4)), other);
203
- }
204
- function stringRem(_this__u8e3s4, other) {
205
- return this.termRem(this.convertToTerm(_this__u8e3s4), other);
206
- }
207
- function anyAnd(_this__u8e3s4, other) {
208
- // Inline function 'kotlin.let' call
209
- // Inline function 'kotlin.contracts.contract' call
210
- // Inline function 'it.unibo.tuprolog.dsl.LogicProgrammingScopeWithOperators.and.<anonymous>' call
211
- var it = this.convertToTerm(_this__u8e3s4);
212
- var otherTerm = this.convertToTerm(other);
213
- var tmp;
214
- if (isInterface(it, Tuple)) {
215
- tmp = this.tupleOfIterable(plus(it.sw(), otherTerm));
216
- } else {
217
- tmp = this.tupleOf([this.convertToTerm(_this__u8e3s4), otherTerm]);
218
- }
219
- return tmp;
220
- }
221
- function anyOr(_this__u8e3s4, other) {
222
- return this.structOf(';', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
223
- }
224
- function anyPow(_this__u8e3s4, other) {
225
- return this.structOf('**', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
226
- }
227
- function anySup(_this__u8e3s4, other) {
228
- return this.structOf('^', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
229
- }
230
- function anyIs(_this__u8e3s4, other) {
231
- return this.structOf('is', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
232
- }
233
- function anyThen(_this__u8e3s4, other) {
234
- return this.structOf('->', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
235
- }
236
- function anyImpliedBy(_this__u8e3s4, other) {
237
- var t = this.convertToTerm(_this__u8e3s4);
238
- var tmp;
239
- if (isInterface(t, Struct)) {
240
- tmp = this.ruleOf(t, this.convertToTerm(other), []);
241
- } else {
242
- raiseErrorConvertingTo(_this__u8e3s4, getKClass(Struct));
243
- }
244
- return tmp;
245
- }
246
- function anyIf(_this__u8e3s4, other) {
247
- return this.anyImpliedBy(_this__u8e3s4, other);
248
- }
249
- function anyImpliedByVararg(_this__u8e3s4, other) {
250
- var tmp = Companion_instance_1;
251
- // Inline function 'kotlin.collections.map' call
252
- // Inline function 'kotlin.collections.mapTo' call
253
- var destination = ArrayList_init_$Create$(other.length);
254
- var inductionVariable = 0;
255
- var last = other.length;
256
- while (inductionVariable < last) {
257
- var item = other[inductionVariable];
258
- inductionVariable = inductionVariable + 1 | 0;
259
- // Inline function 'it.unibo.tuprolog.dsl.LogicProgrammingScopeWithOperators.impliedBy.<anonymous>' call
260
- var tmp$ret$0 = this.convertToTerm(item);
261
- destination.o(tmp$ret$0);
262
- }
263
- return this.anyImpliedBy(_this__u8e3s4, tmp.wrapIterableIfNeeded(destination));
264
- }
265
- function anyIfVararg(_this__u8e3s4, other) {
266
- return this.anyImpliedByVararg(_this__u8e3s4, other.slice());
267
- }
268
- setMetadataFor(LogicProgrammingScopeWithOperators, 'LogicProgrammingScopeWithOperators', interfaceMeta, VOID, [BaseLogicProgrammingScope]);
269
- function stringInvoke(_this__u8e3s4, term, terms) {
270
- var tmp = sequenceOf(arrayConcat([[term], terms]));
271
- return this.structOfSequence(_this__u8e3s4, map(tmp, MinimalLogicProgrammingScope$invoke$lambda(this)));
272
- }
273
- function structOfAny(functor, args) {
274
- // Inline function 'kotlin.collections.toTypedArray' call
275
- // Inline function 'kotlin.collections.map' call
276
- // Inline function 'kotlin.collections.mapTo' call
277
- var destination = ArrayList_init_$Create$(args.length);
278
- var inductionVariable = 0;
279
- var last = args.length;
280
- while (inductionVariable < last) {
281
- var item = args[inductionVariable];
282
- inductionVariable = inductionVariable + 1 | 0;
283
- // Inline function 'it.unibo.tuprolog.dsl.MinimalLogicProgrammingScope.structOf.<anonymous>' call
284
- var tmp$ret$0 = this.convertToTerm(item);
285
- destination.o(tmp$ret$0);
286
- }
287
- var tmp$ret$3 = copyToArray(destination);
288
- return this.structOf(functor, tmp$ret$3.slice());
289
- }
290
- function tupleOfAny(terms) {
291
- // Inline function 'kotlin.collections.toTypedArray' call
292
- // Inline function 'kotlin.collections.map' call
293
- // Inline function 'kotlin.collections.mapTo' call
294
- var destination = ArrayList_init_$Create$(terms.length);
295
- var inductionVariable = 0;
296
- var last = terms.length;
297
- while (inductionVariable < last) {
298
- var item = terms[inductionVariable];
299
- inductionVariable = inductionVariable + 1 | 0;
300
- // Inline function 'it.unibo.tuprolog.dsl.MinimalLogicProgrammingScope.tupleOf.<anonymous>' call
301
- var tmp$ret$0 = this.convertToTerm(item);
302
- destination.o(tmp$ret$0);
303
- }
304
- var tmp$ret$3 = copyToArray(destination);
305
- return this.tupleOf(tmp$ret$3.slice());
306
- }
307
- function logicListOfAny(terms) {
308
- // Inline function 'kotlin.collections.toTypedArray' call
309
- // Inline function 'kotlin.collections.map' call
310
- // Inline function 'kotlin.collections.mapTo' call
311
- var destination = ArrayList_init_$Create$(terms.length);
312
- var inductionVariable = 0;
313
- var last = terms.length;
314
- while (inductionVariable < last) {
315
- var item = terms[inductionVariable];
316
- inductionVariable = inductionVariable + 1 | 0;
317
- // Inline function 'it.unibo.tuprolog.dsl.MinimalLogicProgrammingScope.logicListOf.<anonymous>' call
318
- var tmp$ret$0 = this.convertToTerm(item);
319
- destination.o(tmp$ret$0);
320
- }
321
- var tmp$ret$3 = copyToArray(destination);
322
- return this.logicListOf(tmp$ret$3.slice());
323
- }
324
- function blockOfAny(terms) {
325
- // Inline function 'kotlin.collections.toTypedArray' call
326
- // Inline function 'kotlin.collections.map' call
327
- // Inline function 'kotlin.collections.mapTo' call
328
- var destination = ArrayList_init_$Create$(terms.length);
329
- var inductionVariable = 0;
330
- var last = terms.length;
331
- while (inductionVariable < last) {
332
- var item = terms[inductionVariable];
333
- inductionVariable = inductionVariable + 1 | 0;
334
- // Inline function 'it.unibo.tuprolog.dsl.MinimalLogicProgrammingScope.blockOf.<anonymous>' call
335
- var tmp$ret$0 = this.convertToTerm(item);
336
- destination.o(tmp$ret$0);
337
- }
338
- var tmp$ret$3 = copyToArray(destination);
339
- return this.blockOf(tmp$ret$3.slice());
340
- }
341
- function factOfAny(term) {
342
- var tmp = this.convertToTerm(term);
343
- return this.factOf(isInterface(tmp, Struct) ? tmp : THROW_CCE());
344
- }
345
- function consOfAny(head, tail) {
346
- return this.consOf(this.convertToTerm(head), this.convertToTerm(tail));
347
- }
348
- function directiveOfAny(term, terms) {
349
- var tmp = this.convertToTerm(term);
350
- // Inline function 'kotlin.collections.toTypedArray' call
351
- // Inline function 'kotlin.collections.map' call
352
- // Inline function 'kotlin.collections.mapTo' call
353
- var destination = ArrayList_init_$Create$(terms.length);
354
- var inductionVariable = 0;
355
- var last = terms.length;
356
- while (inductionVariable < last) {
357
- var item = terms[inductionVariable];
358
- inductionVariable = inductionVariable + 1 | 0;
359
- // Inline function 'it.unibo.tuprolog.dsl.MinimalLogicProgrammingScope.directiveOf.<anonymous>' call
360
- var tmp$ret$0 = this.convertToTerm(item);
361
- destination.o(tmp$ret$0);
362
- }
363
- var tmp$ret$3 = copyToArray(destination);
364
- return this.directiveOf(tmp, tmp$ret$3.slice());
365
- }
366
- function withScope(function_0) {
367
- return function_0(this.newScope());
368
- }
369
- function logicList(items, tail) {
370
- // Inline function 'kotlin.let' call
371
- // Inline function 'kotlin.collections.map' call
372
- var this_0 = listOf(items.slice());
373
- // Inline function 'kotlin.collections.mapTo' call
374
- var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
375
- var tmp0_iterator = this_0.r();
376
- while (tmp0_iterator.s()) {
377
- var item = tmp0_iterator.u();
378
- // Inline function 'it.unibo.tuprolog.dsl.MinimalLogicProgrammingScope.logicList.<anonymous>' call
379
- var tmp$ret$0 = this.convertToTerm(item);
380
- destination.o(tmp$ret$0);
381
- }
382
- // Inline function 'kotlin.contracts.contract' call
383
- // Inline function 'it.unibo.tuprolog.dsl.MinimalLogicProgrammingScope.logicList.<anonymous>' call
384
- var tmp;
385
- if (!(tail == null)) {
386
- tmp = this.w10(destination, this.convertToTerm(tail));
387
- } else {
388
- tmp = this.logicListOfIterable(destination);
389
- }
390
- return tmp;
391
- }
392
- function logicList_0(items, tail, $super) {
393
- tail = tail === VOID ? null : tail;
394
- return $super === VOID ? this.d1j(items, tail) : logicList(items, tail);
395
- }
396
- function rule(function_0) {
397
- var tmp = this.convertToTerm(function_0(this.newScope()));
398
- return isInterface(tmp, Rule) ? tmp : THROW_CCE();
399
- }
400
- function directive(function_0) {
401
- var tmp = function_0(this.newScope());
402
- var tmp_0 = getKClass(Directive);
403
- return this.convertToSpecificSubTypeOfTerm(tmp, tmp_0, MinimalLogicProgrammingScope$directive$directiveOf$ref(this));
404
- }
405
- function fact(function_0) {
406
- var tmp = function_0(this.newScope());
407
- var tmp_0 = getKClass(Fact);
408
- return this.convertToSpecificSubTypeOfTerm(tmp, tmp_0, MinimalLogicProgrammingScope$factOf$ref(this));
409
- }
410
- setMetadataFor(MinimalLogicProgrammingScope, 'MinimalLogicProgrammingScope', interfaceMeta, VOID, [BaseLogicProgrammingScope]);
105
+ initMetadataForInterface(BaseLogicProgrammingScope, 'BaseLogicProgrammingScope', VOID, VOID, [Scope]);
106
+ initMetadataForCompanion(Companion);
411
107
  function at_end_of_stream1(alias) {
412
108
  return this.structOf('at_end_of_stream', [this.convertToTerm(alias)]);
413
109
  }
@@ -570,67 +266,359 @@
570
266
  function consult1(url) {
571
267
  return this.structOf('consult', [this.convertToTerm(url)]);
572
268
  }
573
- function set_flag2(name, value) {
574
- return this.structOf('set_flag', [this.convertToTerm(name), this.convertToTerm(value)]);
269
+ function set_flag2(name, value) {
270
+ return this.structOf('set_flag', [this.convertToTerm(name), this.convertToTerm(value)]);
271
+ }
272
+ function set_prolog_flag2(name, value) {
273
+ return this.structOf('set_prolog_flag', [this.convertToTerm(name), this.convertToTerm(value)]);
274
+ }
275
+ function dynamic1(indicator) {
276
+ return this.structOf('dynamic', [this.convertToTerm(indicator)]);
277
+ }
278
+ function static1(indicator) {
279
+ return this.structOf('static', [this.convertToTerm(indicator)]);
280
+ }
281
+ function solve1(goal) {
282
+ return this.structOf('solve', [this.convertToTerm(goal)]);
283
+ }
284
+ function initialization1(goal) {
285
+ return this.structOf('initialization', [this.convertToTerm(goal)]);
286
+ }
287
+ function load1(url) {
288
+ return this.structOf('load', [this.convertToTerm(url)]);
289
+ }
290
+ function include1(url) {
291
+ return this.structOf('include', [this.convertToTerm(url)]);
292
+ }
293
+ initMetadataForInterface(LogicProgrammingScopeWithPrologStandardLibrary, 'LogicProgrammingScopeWithPrologStandardLibrary', VOID, VOID, [BaseLogicProgrammingScope]);
294
+ function varTo(_this__u8e3s4, termObject) {
295
+ return Companion_getInstance_0().of(_this__u8e3s4, this.convertToTerm(termObject));
296
+ }
297
+ function stringTo(_this__u8e3s4, termObject) {
298
+ return Companion_getInstance_0().of(this.varOf(_this__u8e3s4), this.convertToTerm(termObject));
299
+ }
300
+ function substitutionGet(_this__u8e3s4, term) {
301
+ var t = this.convertToTerm(term);
302
+ var tmp;
303
+ if (isInterface(t, Var)) {
304
+ tmp = _this__u8e3s4.h2(t);
305
+ } else {
306
+ raiseErrorConvertingTo(term, getKClass(Var));
307
+ }
308
+ return tmp;
309
+ }
310
+ function substitutionContainsKey(_this__u8e3s4, term) {
311
+ var t = this.convertToTerm(term);
312
+ var tmp;
313
+ if (isInterface(t, Var)) {
314
+ tmp = _this__u8e3s4.f2(t);
315
+ } else {
316
+ raiseErrorConvertingTo(term, getKClass(Var));
317
+ }
318
+ return tmp;
319
+ }
320
+ function substitutionContains(_this__u8e3s4, term) {
321
+ return this.substitutionContainsKey(_this__u8e3s4, term);
322
+ }
323
+ function substitutionContainsValue(_this__u8e3s4, term) {
324
+ return _this__u8e3s4.g2(this.convertToTerm(term));
325
+ }
326
+ initMetadataForInterface(LogicProgrammingScopeWithSubstitutions, 'LogicProgrammingScopeWithSubstitutions', VOID, VOID, [BaseLogicProgrammingScope]);
327
+ function termPlus(_this__u8e3s4, other) {
328
+ return this.structOf('+', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
329
+ }
330
+ function number(_this__u8e3s4, other) {
331
+ return this.termPlus(this.convertToTerm(_this__u8e3s4), other);
332
+ }
333
+ function booleanPlus(_this__u8e3s4, other) {
334
+ return this.termPlus(this.convertToTerm(_this__u8e3s4), other);
335
+ }
336
+ function charPlus(_this__u8e3s4, other) {
337
+ return this.termPlus(this.convertToTerm(new Char(_this__u8e3s4)), other);
338
+ }
339
+ function termMinus(_this__u8e3s4, other) {
340
+ return this.structOf('-', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
341
+ }
342
+ function numberMinus(_this__u8e3s4, other) {
343
+ return this.termMinus(this.convertToTerm(_this__u8e3s4), other);
344
+ }
345
+ function booleanMinus(_this__u8e3s4, other) {
346
+ return this.termMinus(this.convertToTerm(_this__u8e3s4), other);
347
+ }
348
+ function charMinus(_this__u8e3s4, other) {
349
+ return this.termMinus(this.convertToTerm(new Char(_this__u8e3s4)), other);
350
+ }
351
+ function stringMinus(_this__u8e3s4, other) {
352
+ return this.termMinus(this.convertToTerm(_this__u8e3s4), other);
353
+ }
354
+ function termTimes(_this__u8e3s4, other) {
355
+ return this.structOf('*', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
356
+ }
357
+ function numberTimes(_this__u8e3s4, other) {
358
+ return this.termTimes(this.convertToTerm(_this__u8e3s4), other);
359
+ }
360
+ function booleanTimes(_this__u8e3s4, other) {
361
+ return this.termTimes(this.convertToTerm(_this__u8e3s4), other);
362
+ }
363
+ function charTimes(_this__u8e3s4, other) {
364
+ return this.termTimes(this.convertToTerm(new Char(_this__u8e3s4)), other);
365
+ }
366
+ function stringTimes(_this__u8e3s4, other) {
367
+ return this.termTimes(this.convertToTerm(_this__u8e3s4), other);
368
+ }
369
+ function termDiv(_this__u8e3s4, other) {
370
+ return this.indicatorOf(this.convertToTerm(_this__u8e3s4), this.convertToTerm(other));
371
+ }
372
+ function numberDiv(_this__u8e3s4, other) {
373
+ return this.termDiv(this.convertToTerm(_this__u8e3s4), other);
374
+ }
375
+ function booleanDiv(_this__u8e3s4, other) {
376
+ return this.termDiv(this.convertToTerm(_this__u8e3s4), other);
377
+ }
378
+ function charDiv(_this__u8e3s4, other) {
379
+ return this.termDiv(this.convertToTerm(new Char(_this__u8e3s4)), other);
380
+ }
381
+ function stringDiv(_this__u8e3s4, other) {
382
+ return this.termDiv(this.convertToTerm(_this__u8e3s4), other);
383
+ }
384
+ function anyEqualsTo(_this__u8e3s4, other) {
385
+ return this.structOf('=', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
386
+ }
387
+ function anyNotEqualsTo(_this__u8e3s4, other) {
388
+ return this.structOf('\\=', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
389
+ }
390
+ function anyGreaterThan(_this__u8e3s4, other) {
391
+ return this.structOf('>', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
392
+ }
393
+ function anyGreaterThanOrEqualsTo(_this__u8e3s4, other) {
394
+ return this.structOf('>=', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
395
+ }
396
+ function anyNonLowerThan(_this__u8e3s4, other) {
397
+ return this.anyGreaterThanOrEqualsTo(_this__u8e3s4, other);
398
+ }
399
+ function anyLowerThan(_this__u8e3s4, other) {
400
+ return this.structOf('<', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
401
+ }
402
+ function anyLowerThanOrEqualsTo(_this__u8e3s4, other) {
403
+ return this.structOf('=<', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
404
+ }
405
+ function anyNonGreaterThan(_this__u8e3s4, other) {
406
+ return this.anyLowerThanOrEqualsTo(_this__u8e3s4, other);
407
+ }
408
+ function anyIntDiv(_this__u8e3s4, other) {
409
+ return this.structOf('//', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
410
+ }
411
+ function termRem(_this__u8e3s4, other) {
412
+ return this.structOf('rem', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
413
+ }
414
+ function numberRem(_this__u8e3s4, other) {
415
+ return this.termRem(this.convertToTerm(_this__u8e3s4), other);
416
+ }
417
+ function booleanRem(_this__u8e3s4, other) {
418
+ return this.termRem(this.convertToTerm(_this__u8e3s4), other);
419
+ }
420
+ function charRem(_this__u8e3s4, other) {
421
+ return this.termRem(this.convertToTerm(new Char(_this__u8e3s4)), other);
422
+ }
423
+ function stringRem(_this__u8e3s4, other) {
424
+ return this.termRem(this.convertToTerm(_this__u8e3s4), other);
425
+ }
426
+ function anyAnd(_this__u8e3s4, other) {
427
+ // Inline function 'kotlin.let' call
428
+ var it = this.convertToTerm(_this__u8e3s4);
429
+ var otherTerm = this.convertToTerm(other);
430
+ var tmp;
431
+ if (isInterface(it, Tuple)) {
432
+ tmp = this.tupleOfIterable(plus(it.uv(), otherTerm));
433
+ } else {
434
+ tmp = this.tupleOf([this.convertToTerm(_this__u8e3s4), otherTerm]);
435
+ }
436
+ return tmp;
437
+ }
438
+ function anyOr(_this__u8e3s4, other) {
439
+ return this.structOf(';', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
440
+ }
441
+ function anyPow(_this__u8e3s4, other) {
442
+ return this.structOf('**', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
443
+ }
444
+ function anySup(_this__u8e3s4, other) {
445
+ return this.structOf('^', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
446
+ }
447
+ function anyIs(_this__u8e3s4, other) {
448
+ return this.structOf('is', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
449
+ }
450
+ function anyThen(_this__u8e3s4, other) {
451
+ return this.structOf('->', [this.convertToTerm(_this__u8e3s4), this.convertToTerm(other)]);
452
+ }
453
+ function anyImpliedBy(_this__u8e3s4, other) {
454
+ var t = this.convertToTerm(_this__u8e3s4);
455
+ var tmp;
456
+ if (isInterface(t, Struct)) {
457
+ tmp = this.ruleOf(t, this.convertToTerm(other), []);
458
+ } else {
459
+ raiseErrorConvertingTo(_this__u8e3s4, getKClass(Struct));
460
+ }
461
+ return tmp;
462
+ }
463
+ function anyIf(_this__u8e3s4, other) {
464
+ return this.anyImpliedBy(_this__u8e3s4, other);
465
+ }
466
+ function anyImpliedByVararg(_this__u8e3s4, other) {
467
+ var tmp = Companion_instance_1;
468
+ // Inline function 'kotlin.collections.map' call
469
+ // Inline function 'kotlin.collections.mapTo' call
470
+ var destination = ArrayList_init_$Create$(other.length);
471
+ var inductionVariable = 0;
472
+ var last = other.length;
473
+ while (inductionVariable < last) {
474
+ var item = other[inductionVariable];
475
+ inductionVariable = inductionVariable + 1 | 0;
476
+ var tmp$ret$0 = this.convertToTerm(item);
477
+ destination.m(tmp$ret$0);
478
+ }
479
+ return this.anyImpliedBy(_this__u8e3s4, tmp.wrapIterableIfNeeded(destination));
480
+ }
481
+ function anyIfVararg(_this__u8e3s4, other) {
482
+ return this.anyImpliedByVararg(_this__u8e3s4, other.slice());
575
483
  }
576
- function set_prolog_flag2(name, value) {
577
- return this.structOf('set_prolog_flag', [this.convertToTerm(name), this.convertToTerm(value)]);
484
+ initMetadataForInterface(LogicProgrammingScopeWithOperators, 'LogicProgrammingScopeWithOperators', VOID, VOID, [BaseLogicProgrammingScope]);
485
+ function stringInvoke(_this__u8e3s4, term, terms) {
486
+ var tmp = sequenceOf(arrayConcat([[term], terms]));
487
+ return this.structOfSequence(_this__u8e3s4, map(tmp, MinimalLogicProgrammingScope$invoke$lambda(this)));
578
488
  }
579
- function dynamic1(indicator) {
580
- return this.structOf('dynamic', [this.convertToTerm(indicator)]);
489
+ function structOfAny(functor, args) {
490
+ // Inline function 'kotlin.collections.map' call
491
+ // Inline function 'kotlin.collections.mapTo' call
492
+ var destination = ArrayList_init_$Create$(args.length);
493
+ var inductionVariable = 0;
494
+ var last = args.length;
495
+ while (inductionVariable < last) {
496
+ var item = args[inductionVariable];
497
+ inductionVariable = inductionVariable + 1 | 0;
498
+ var tmp$ret$0 = this.convertToTerm(item);
499
+ destination.m(tmp$ret$0);
500
+ }
501
+ // Inline function 'kotlin.collections.toTypedArray' call
502
+ var tmp$ret$3 = copyToArray(destination);
503
+ return this.structOf(functor, tmp$ret$3.slice());
581
504
  }
582
- function static1(indicator) {
583
- return this.structOf('static', [this.convertToTerm(indicator)]);
505
+ function tupleOfAny(terms) {
506
+ // Inline function 'kotlin.collections.map' call
507
+ // Inline function 'kotlin.collections.mapTo' call
508
+ var destination = ArrayList_init_$Create$(terms.length);
509
+ var inductionVariable = 0;
510
+ var last = terms.length;
511
+ while (inductionVariable < last) {
512
+ var item = terms[inductionVariable];
513
+ inductionVariable = inductionVariable + 1 | 0;
514
+ var tmp$ret$0 = this.convertToTerm(item);
515
+ destination.m(tmp$ret$0);
516
+ }
517
+ // Inline function 'kotlin.collections.toTypedArray' call
518
+ var tmp$ret$3 = copyToArray(destination);
519
+ return this.tupleOf(tmp$ret$3.slice());
584
520
  }
585
- function solve1(goal) {
586
- return this.structOf('solve', [this.convertToTerm(goal)]);
521
+ function logicListOfAny(terms) {
522
+ // Inline function 'kotlin.collections.map' call
523
+ // Inline function 'kotlin.collections.mapTo' call
524
+ var destination = ArrayList_init_$Create$(terms.length);
525
+ var inductionVariable = 0;
526
+ var last = terms.length;
527
+ while (inductionVariable < last) {
528
+ var item = terms[inductionVariable];
529
+ inductionVariable = inductionVariable + 1 | 0;
530
+ var tmp$ret$0 = this.convertToTerm(item);
531
+ destination.m(tmp$ret$0);
532
+ }
533
+ // Inline function 'kotlin.collections.toTypedArray' call
534
+ var tmp$ret$3 = copyToArray(destination);
535
+ return this.logicListOf(tmp$ret$3.slice());
587
536
  }
588
- function initialization1(goal) {
589
- return this.structOf('initialization', [this.convertToTerm(goal)]);
537
+ function blockOfAny(terms) {
538
+ // Inline function 'kotlin.collections.map' call
539
+ // Inline function 'kotlin.collections.mapTo' call
540
+ var destination = ArrayList_init_$Create$(terms.length);
541
+ var inductionVariable = 0;
542
+ var last = terms.length;
543
+ while (inductionVariable < last) {
544
+ var item = terms[inductionVariable];
545
+ inductionVariable = inductionVariable + 1 | 0;
546
+ var tmp$ret$0 = this.convertToTerm(item);
547
+ destination.m(tmp$ret$0);
548
+ }
549
+ // Inline function 'kotlin.collections.toTypedArray' call
550
+ var tmp$ret$3 = copyToArray(destination);
551
+ return this.blockOf(tmp$ret$3.slice());
590
552
  }
591
- function load1(url) {
592
- return this.structOf('load', [this.convertToTerm(url)]);
553
+ function factOfAny(term) {
554
+ var tmp = this.convertToTerm(term);
555
+ return this.factOf(isInterface(tmp, Struct) ? tmp : THROW_CCE());
593
556
  }
594
- function include1(url) {
595
- return this.structOf('include', [this.convertToTerm(url)]);
557
+ function consOfAny(head, tail) {
558
+ return this.consOf(this.convertToTerm(head), this.convertToTerm(tail));
596
559
  }
597
- setMetadataFor(LogicProgrammingScopeWithPrologStandardLibrary, 'LogicProgrammingScopeWithPrologStandardLibrary', interfaceMeta, VOID, [BaseLogicProgrammingScope]);
598
- function varTo(_this__u8e3s4, termObject) {
599
- return Companion_getInstance_0().of(_this__u8e3s4, this.convertToTerm(termObject));
560
+ function directiveOfAny(term, terms) {
561
+ var tmp = this.convertToTerm(term);
562
+ // Inline function 'kotlin.collections.map' call
563
+ // Inline function 'kotlin.collections.mapTo' call
564
+ var destination = ArrayList_init_$Create$(terms.length);
565
+ var inductionVariable = 0;
566
+ var last = terms.length;
567
+ while (inductionVariable < last) {
568
+ var item = terms[inductionVariable];
569
+ inductionVariable = inductionVariable + 1 | 0;
570
+ var tmp$ret$0 = this.convertToTerm(item);
571
+ destination.m(tmp$ret$0);
572
+ }
573
+ // Inline function 'kotlin.collections.toTypedArray' call
574
+ var tmp$ret$3 = copyToArray(destination);
575
+ return this.directiveOf(tmp, tmp$ret$3.slice());
600
576
  }
601
- function stringTo(_this__u8e3s4, termObject) {
602
- return Companion_getInstance_0().of(this.varOf(_this__u8e3s4), this.convertToTerm(termObject));
577
+ function withScope(function_0) {
578
+ return function_0(this.newScope());
603
579
  }
604
- function substitutionGet(_this__u8e3s4, term) {
605
- var t = this.convertToTerm(term);
606
- var tmp;
607
- if (isInterface(t, Var)) {
608
- tmp = _this__u8e3s4.x2(t);
609
- } else {
610
- raiseErrorConvertingTo(term, getKClass(Var));
580
+ function logicList(items, tail) {
581
+ // Inline function 'kotlin.collections.map' call
582
+ var this_0 = listOf(items.slice());
583
+ // Inline function 'kotlin.collections.mapTo' call
584
+ var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
585
+ var _iterator__ex2g4s = this_0.p();
586
+ while (_iterator__ex2g4s.s()) {
587
+ var item = _iterator__ex2g4s.t();
588
+ var tmp$ret$0 = this.convertToTerm(item);
589
+ destination.m(tmp$ret$0);
611
590
  }
612
- return tmp;
613
- }
614
- function substitutionContainsKey(_this__u8e3s4, term) {
615
- var t = this.convertToTerm(term);
591
+ // Inline function 'kotlin.let' call
616
592
  var tmp;
617
- if (isInterface(t, Var)) {
618
- tmp = _this__u8e3s4.u2(t);
593
+ if (!(tail == null)) {
594
+ tmp = this.yz(destination, this.convertToTerm(tail));
619
595
  } else {
620
- raiseErrorConvertingTo(term, getKClass(Var));
596
+ tmp = this.logicListOfIterable(destination);
621
597
  }
622
598
  return tmp;
623
599
  }
624
- function substitutionContains(_this__u8e3s4, term) {
625
- return this.substitutionContainsKey(_this__u8e3s4, term);
600
+ function logicList_0(items, tail, $super) {
601
+ tail = tail === VOID ? null : tail;
602
+ return $super === VOID ? this.r2x(items, tail) : logicList(items, tail);
626
603
  }
627
- function substitutionContainsValue(_this__u8e3s4, term) {
628
- return _this__u8e3s4.v2(this.convertToTerm(term));
604
+ function rule(function_0) {
605
+ var tmp = this.convertToTerm(function_0(this.newScope()));
606
+ return isInterface(tmp, Rule) ? tmp : THROW_CCE();
607
+ }
608
+ function directive(function_0) {
609
+ var tmp = function_0(this.newScope());
610
+ var tmp_0 = getKClass(Directive);
611
+ return this.convertToSpecificSubTypeOfTerm(tmp, tmp_0, MinimalLogicProgrammingScope$directiveOf$ref(this));
612
+ }
613
+ function fact(function_0) {
614
+ var tmp = function_0(this.newScope());
615
+ var tmp_0 = getKClass(Fact);
616
+ return this.convertToSpecificSubTypeOfTerm(tmp, tmp_0, MinimalLogicProgrammingScope$factOf$ref(this));
629
617
  }
630
- setMetadataFor(LogicProgrammingScopeWithSubstitutions, 'LogicProgrammingScopeWithSubstitutions', interfaceMeta, VOID, [BaseLogicProgrammingScope]);
631
- setMetadataFor(LogicProgrammingScopeImpl, 'LogicProgrammingScopeImpl', classMeta, VOID, [LogicProgrammingScopeWithOperators, MinimalLogicProgrammingScope, Scope, LogicProgrammingScopeWithPrologStandardLibrary, BaseLogicProgrammingScope, LogicProgrammingScopeWithSubstitutions]);
632
- setMetadataFor(Companion_0, 'Companion', objectMeta);
633
- setMetadataFor(DefaultTermificator, 'DefaultTermificator', classMeta, AbstractTermificator);
618
+ initMetadataForInterface(MinimalLogicProgrammingScope, 'MinimalLogicProgrammingScope', VOID, VOID, [BaseLogicProgrammingScope]);
619
+ initMetadataForClass(LogicProgrammingScopeImpl, 'LogicProgrammingScopeImpl', VOID, VOID, [LogicProgrammingScopeWithPrologStandardLibrary, LogicProgrammingScopeWithSubstitutions, BaseLogicProgrammingScope, LogicProgrammingScopeWithOperators, Scope, MinimalLogicProgrammingScope]);
620
+ initMetadataForCompanion(Companion_0);
621
+ initMetadataForClass(DefaultTermificator, 'DefaultTermificator', VOID, AbstractTermificator);
634
622
  //endregion
635
623
  function AbstractTermificator$handleType$lambda($conversion) {
636
624
  return function (it) {
@@ -639,400 +627,393 @@
639
627
  }
640
628
  function AbstractTermificator$handleSequenceAsList$lambda(this$0) {
641
629
  return function (it) {
642
- return this$0.d1i(it);
630
+ return this$0.r2w(it);
643
631
  };
644
632
  }
645
- function AbstractTermificator$handleCharAsString$ref($boundThis) {
646
- var l = function (p0) {
647
- return $boundThis.e1i(p0.j9_1);
633
+ function AbstractTermificator$handleCharAsString$ref(p0) {
634
+ var l = function (_this__u8e3s4) {
635
+ return p0.s2w(_this__u8e3s4.p1_1);
648
636
  };
649
637
  l.callableName = 'handleCharAsString';
650
638
  return l;
651
639
  }
652
- function AbstractTermificator$handleBooleanAsTruth$ref($boundThis) {
653
- var l = function (p0) {
654
- return $boundThis.f1i(p0);
640
+ function AbstractTermificator$handleBooleanAsTruth$ref(p0) {
641
+ var l = function (_this__u8e3s4) {
642
+ return p0.t2w(_this__u8e3s4);
655
643
  };
656
644
  l.callableName = 'handleBooleanAsTruth';
657
645
  return l;
658
646
  }
659
- function AbstractTermificator$handleStringAsAtomOrVariable$ref($boundThis) {
660
- var l = function (p0) {
661
- return $boundThis.g1i(p0);
647
+ function AbstractTermificator$handleStringAsAtomOrVariable$ref(p0) {
648
+ var l = function (_this__u8e3s4) {
649
+ return p0.u2w(_this__u8e3s4);
662
650
  };
663
651
  l.callableName = 'handleStringAsAtomOrVariable';
664
652
  return l;
665
653
  }
666
- function AbstractTermificator$handleBigIntegerAsInteger$ref($boundThis) {
667
- var l = function (p0) {
668
- return $boundThis.h1i(p0);
654
+ function AbstractTermificator$handleBigIntegerAsInteger$ref(p0) {
655
+ var l = function (_this__u8e3s4) {
656
+ return p0.v2w(_this__u8e3s4);
669
657
  };
670
658
  l.callableName = 'handleBigIntegerAsInteger';
671
659
  return l;
672
660
  }
673
- function AbstractTermificator$handleBigDecimalAsReal$ref($boundThis) {
674
- var l = function (p0) {
675
- return $boundThis.i1i(p0);
661
+ function AbstractTermificator$handleBigDecimalAsReal$ref(p0) {
662
+ var l = function (_this__u8e3s4) {
663
+ return p0.w2w(_this__u8e3s4);
676
664
  };
677
665
  l.callableName = 'handleBigDecimalAsReal';
678
666
  return l;
679
667
  }
680
- function AbstractTermificator$handleNumberAsNumeric$ref($boundThis) {
681
- var l = function (p0) {
682
- return $boundThis.j1i(p0);
668
+ function AbstractTermificator$handleNumberAsNumeric$ref(p0) {
669
+ var l = function (_this__u8e3s4) {
670
+ return p0.x2w(_this__u8e3s4);
683
671
  };
684
672
  l.callableName = 'handleNumberAsNumeric';
685
673
  return l;
686
674
  }
687
- function AbstractTermificator$handleArrayAsList$ref($boundThis) {
688
- var l = function (p0) {
689
- return $boundThis.k1i(p0);
675
+ function AbstractTermificator$handleArrayAsList$ref(p0) {
676
+ var l = function (_this__u8e3s4) {
677
+ return p0.y2w(_this__u8e3s4);
690
678
  };
691
679
  l.callableName = 'handleArrayAsList';
692
680
  return l;
693
681
  }
694
- function AbstractTermificator$handleSequenceAsList$ref($boundThis) {
695
- var l = function (p0) {
696
- return $boundThis.l1i(p0);
682
+ function AbstractTermificator$handleSequenceAsList$ref(p0) {
683
+ var l = function (_this__u8e3s4) {
684
+ return p0.z2w(_this__u8e3s4);
697
685
  };
698
686
  l.callableName = 'handleSequenceAsList';
699
687
  return l;
700
688
  }
701
- function AbstractTermificator$handleIterableAsList$ref($boundThis) {
702
- var l = function (p0) {
703
- return $boundThis.m1i(p0);
689
+ function AbstractTermificator$handleIterableAsList$ref(p0) {
690
+ var l = function (_this__u8e3s4) {
691
+ return p0.a2x(_this__u8e3s4);
704
692
  };
705
693
  l.callableName = 'handleIterableAsList';
706
694
  return l;
707
695
  }
708
- function AbstractTermificator$handleCharAsString$ref_0($boundThis) {
709
- var l = function (p0) {
710
- return $boundThis.e1i(p0.j9_1);
696
+ function AbstractTermificator$handleCharAsString$ref_0(p0) {
697
+ var l = function (_this__u8e3s4) {
698
+ return p0.s2w(_this__u8e3s4.p1_1);
711
699
  };
712
700
  l.callableName = 'handleCharAsString';
713
701
  return l;
714
702
  }
715
- function AbstractTermificator$handleBooleanAsTruth$ref_0($boundThis) {
716
- var l = function (p0) {
717
- return $boundThis.f1i(p0);
703
+ function AbstractTermificator$handleBooleanAsTruth$ref_0(p0) {
704
+ var l = function (_this__u8e3s4) {
705
+ return p0.t2w(_this__u8e3s4);
718
706
  };
719
707
  l.callableName = 'handleBooleanAsTruth';
720
708
  return l;
721
709
  }
722
- function AbstractTermificator$handleStringAsAtomOrVariable$ref_0($boundThis) {
723
- var l = function (p0) {
724
- return $boundThis.g1i(p0);
710
+ function AbstractTermificator$handleStringAsAtomOrVariable$ref_0(p0) {
711
+ var l = function (_this__u8e3s4) {
712
+ return p0.u2w(_this__u8e3s4);
725
713
  };
726
714
  l.callableName = 'handleStringAsAtomOrVariable';
727
715
  return l;
728
716
  }
729
- function AbstractTermificator$handleBigIntegerAsInteger$ref_0($boundThis) {
730
- var l = function (p0) {
731
- return $boundThis.h1i(p0);
717
+ function AbstractTermificator$handleBigIntegerAsInteger$ref_0(p0) {
718
+ var l = function (_this__u8e3s4) {
719
+ return p0.v2w(_this__u8e3s4);
732
720
  };
733
721
  l.callableName = 'handleBigIntegerAsInteger';
734
722
  return l;
735
723
  }
736
- function AbstractTermificator$handleBigDecimalAsReal$ref_0($boundThis) {
737
- var l = function (p0) {
738
- return $boundThis.i1i(p0);
724
+ function AbstractTermificator$handleBigDecimalAsReal$ref_0(p0) {
725
+ var l = function (_this__u8e3s4) {
726
+ return p0.w2w(_this__u8e3s4);
739
727
  };
740
728
  l.callableName = 'handleBigDecimalAsReal';
741
729
  return l;
742
730
  }
743
- function AbstractTermificator$handleNumberAsNumeric$ref_0($boundThis) {
744
- var l = function (p0) {
745
- return $boundThis.j1i(p0);
731
+ function AbstractTermificator$handleNumberAsNumeric$ref_0(p0) {
732
+ var l = function (_this__u8e3s4) {
733
+ return p0.x2w(_this__u8e3s4);
746
734
  };
747
735
  l.callableName = 'handleNumberAsNumeric';
748
736
  return l;
749
737
  }
750
- function AbstractTermificator$handleArrayAsList$ref_0($boundThis) {
751
- var l = function (p0) {
752
- return $boundThis.k1i(p0);
738
+ function AbstractTermificator$handleArrayAsList$ref_0(p0) {
739
+ var l = function (_this__u8e3s4) {
740
+ return p0.y2w(_this__u8e3s4);
753
741
  };
754
742
  l.callableName = 'handleArrayAsList';
755
743
  return l;
756
744
  }
757
- function AbstractTermificator$handleSequenceAsList$ref_0($boundThis) {
758
- var l = function (p0) {
759
- return $boundThis.l1i(p0);
745
+ function AbstractTermificator$handleSequenceAsList$ref_0(p0) {
746
+ var l = function (_this__u8e3s4) {
747
+ return p0.z2w(_this__u8e3s4);
760
748
  };
761
749
  l.callableName = 'handleSequenceAsList';
762
750
  return l;
763
751
  }
764
- function AbstractTermificator$handleKotlinListAsLogicList$ref($boundThis) {
765
- var l = function (p0) {
766
- return $boundThis.n1i(p0);
752
+ function AbstractTermificator$handleKotlinListAsLogicList$ref(p0) {
753
+ var l = function (_this__u8e3s4) {
754
+ return p0.b2x(_this__u8e3s4);
767
755
  };
768
756
  l.callableName = 'handleKotlinListAsLogicList';
769
757
  return l;
770
758
  }
771
- function AbstractTermificator$handleSetAsBlock$ref($boundThis) {
772
- var l = function (p0) {
773
- return $boundThis.o1i(p0);
759
+ function AbstractTermificator$handleSetAsBlock$ref(p0) {
760
+ var l = function (_this__u8e3s4) {
761
+ return p0.c2x(_this__u8e3s4);
774
762
  };
775
763
  l.callableName = 'handleSetAsBlock';
776
764
  return l;
777
765
  }
778
- function AbstractTermificator$handlePairAsTuple$ref($boundThis) {
779
- var l = function (p0) {
780
- return $boundThis.p1i(p0);
766
+ function AbstractTermificator$handlePairAsTuple$ref(p0) {
767
+ var l = function (_this__u8e3s4) {
768
+ return p0.d2x(_this__u8e3s4);
781
769
  };
782
770
  l.callableName = 'handlePairAsTuple';
783
771
  return l;
784
772
  }
785
- function AbstractTermificator$handleTripletAsTuple$ref($boundThis) {
786
- var l = function (p0) {
787
- return $boundThis.q1i(p0);
773
+ function AbstractTermificator$handleTripletAsTuple$ref(p0) {
774
+ var l = function (_this__u8e3s4) {
775
+ return p0.e2x(_this__u8e3s4);
788
776
  };
789
777
  l.callableName = 'handleTripletAsTuple';
790
778
  return l;
791
779
  }
792
- function AbstractTermificator$handleKeyValuePairAsStruct$ref($boundThis) {
793
- var l = function (p0) {
794
- return $boundThis.r1i(p0);
780
+ function AbstractTermificator$handleKeyValuePairAsStruct$ref(p0) {
781
+ var l = function (_this__u8e3s4) {
782
+ return p0.f2x(_this__u8e3s4);
795
783
  };
796
784
  l.callableName = 'handleKeyValuePairAsStruct';
797
785
  return l;
798
786
  }
799
- function AbstractTermificator$handleMapAsBlock$ref($boundThis) {
800
- var l = function (p0) {
801
- return $boundThis.s1i(p0);
787
+ function AbstractTermificator$handleMapAsBlock$ref(p0) {
788
+ var l = function (_this__u8e3s4) {
789
+ return p0.g2x(_this__u8e3s4);
802
790
  };
803
791
  l.callableName = 'handleMapAsBlock';
804
792
  return l;
805
793
  }
806
- function AbstractTermificator$handleIterableAsList$ref_0($boundThis) {
807
- var l = function (p0) {
808
- return $boundThis.m1i(p0);
794
+ function AbstractTermificator$handleIterableAsList$ref_0(p0) {
795
+ var l = function (_this__u8e3s4) {
796
+ return p0.a2x(_this__u8e3s4);
809
797
  };
810
798
  l.callableName = 'handleIterableAsList';
811
799
  return l;
812
800
  }
813
801
  function AbstractTermificator(scope) {
814
- this.b1i_1 = scope;
802
+ this.p2w_1 = scope;
815
803
  var tmp = this;
816
804
  // Inline function 'kotlin.collections.linkedMapOf' call
817
- tmp.c1i_1 = LinkedHashMap_init_$Create$();
805
+ tmp.q2w_1 = LinkedHashMap_init_$Create$();
818
806
  }
819
- protoOf(AbstractTermificator).z1g = function () {
820
- return this.b1i_1;
807
+ protoOf(AbstractTermificator).a1g = function () {
808
+ return this.p2w_1;
821
809
  };
822
- protoOf(AbstractTermificator).t1i = function (type, conversion) {
810
+ protoOf(AbstractTermificator).h2x = function (type, conversion) {
811
+ var tmp0 = this.q2w_1;
823
812
  // Inline function 'kotlin.collections.set' call
824
- var this_0 = this.c1i_1;
825
813
  var value = AbstractTermificator$handleType$lambda(conversion);
826
- this_0.o2(type, value);
814
+ tmp0.k4(type, value);
827
815
  };
828
- protoOf(AbstractTermificator).d1i = function (value) {
816
+ protoOf(AbstractTermificator).r2w = function (value) {
829
817
  $l$block: {
830
818
  // Inline function 'kotlin.requireNotNull' call
831
- // Inline function 'kotlin.contracts.contract' call
832
819
  if (value == null) {
833
- // Inline function 'it.unibo.tuprolog.dsl.AbstractTermificator.termify.<anonymous>' call
834
820
  var message = 'Cannot termify null';
835
821
  throw IllegalArgumentException_init_$Create$(toString(message));
836
822
  } else {
837
823
  break $l$block;
838
824
  }
839
825
  }
840
- if (!(value == null) ? isInterface(value, Term) : false) {
826
+ if (isInterface(value, Term)) {
841
827
  return value;
842
828
  }
843
- if (!(value == null) ? isInterface(value, TermConvertible) : false) {
829
+ if (isInterface(value, TermConvertible)) {
844
830
  return value.toTerm();
845
831
  }
846
832
  var type = getKClassFromExpression(value);
847
- var exactConverter = this.c1i_1.x2(type);
833
+ var exactConverter = this.q2w_1.h2(type);
848
834
  if (!(exactConverter == null)) {
849
835
  return exactConverter(value);
850
836
  }
851
837
  // Inline function 'kotlin.collections.iterator' call
852
- var tmp0_iterator = this.c1i_1.n2().r();
853
- while (tmp0_iterator.s()) {
854
- var tmp1_loop_parameter = tmp0_iterator.u();
838
+ var _iterator__ex2g4s = this.q2w_1.e1().p();
839
+ while (_iterator__ex2g4s.s()) {
840
+ var _destruct__k2r9zo = _iterator__ex2g4s.t();
855
841
  // Inline function 'kotlin.collections.component1' call
856
- var superType = tmp1_loop_parameter.q2();
842
+ var superType = _destruct__k2r9zo.d2();
857
843
  // Inline function 'kotlin.collections.component2' call
858
- var converter = tmp1_loop_parameter.r2();
859
- if (superType.p6(value)) {
844
+ var converter = _destruct__k2r9zo.e2();
845
+ if (superType.c9(value)) {
860
846
  return converter(value);
861
847
  }
862
848
  }
863
849
  raiseErrorConvertingTo(value, getKClass(Term));
864
850
  };
865
851
  protoOf(AbstractTermificator).toTerm = function (value) {
866
- return this.d1i(value);
852
+ return this.r2w(value);
867
853
  };
868
- protoOf(AbstractTermificator).f1i = function (value) {
869
- return this.z1g().truthOf(value);
854
+ protoOf(AbstractTermificator).t2w = function (value) {
855
+ return this.a1g().truthOf(value);
870
856
  };
871
- protoOf(AbstractTermificator).e1i = function (value) {
872
- return this.d1i(toString_0(value));
857
+ protoOf(AbstractTermificator).s2w = function (value) {
858
+ return this.r2w(toString_0(value));
873
859
  };
874
- protoOf(AbstractTermificator).g1i = function (value) {
860
+ protoOf(AbstractTermificator).u2w = function (value) {
875
861
  var tmp;
876
862
  // Inline function 'kotlin.text.matches' call
877
- if (Companion_getInstance().q13_1.i8(value)) {
878
- tmp = this.z1g().varOf(value);
863
+ if (Companion_getInstance().r12_1.ta(value)) {
864
+ tmp = this.a1g().varOf(value);
879
865
  } else {
880
- tmp = this.z1g().atomOf(value);
866
+ tmp = this.a1g().atomOf(value);
881
867
  }
882
868
  return tmp;
883
869
  };
884
- protoOf(AbstractTermificator).h1i = function (value) {
885
- return this.z1g().intOfBigInteger(value);
870
+ protoOf(AbstractTermificator).v2w = function (value) {
871
+ return this.a1g().intOfBigInteger(value);
886
872
  };
887
- protoOf(AbstractTermificator).i1i = function (value) {
888
- return this.z1g().realOfBigDecimal(value);
873
+ protoOf(AbstractTermificator).w2w = function (value) {
874
+ return this.a1g().realOfBigDecimal(value);
889
875
  };
890
- protoOf(AbstractTermificator).k1i = function (value) {
891
- var tmp = this.z1g();
876
+ protoOf(AbstractTermificator).y2w = function (value) {
877
+ var tmp = this.a1g();
892
878
  // Inline function 'kotlin.collections.map' call
893
879
  var this_0 = assertItemsAreNotNull(asIterable(value));
894
880
  // Inline function 'kotlin.collections.mapTo' call
895
881
  var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
896
- var tmp0_iterator = this_0.r();
897
- while (tmp0_iterator.s()) {
898
- var item = tmp0_iterator.u();
899
- // Inline function 'it.unibo.tuprolog.dsl.AbstractTermificator.handleArrayAsList.<anonymous>' call
900
- var tmp$ret$0 = this.d1i(item);
901
- destination.o(tmp$ret$0);
882
+ var _iterator__ex2g4s = this_0.p();
883
+ while (_iterator__ex2g4s.s()) {
884
+ var item = _iterator__ex2g4s.t();
885
+ var tmp$ret$0 = this.r2w(item);
886
+ destination.m(tmp$ret$0);
902
887
  }
903
888
  return tmp.logicListOfIterable(destination);
904
889
  };
905
- protoOf(AbstractTermificator).l1i = function (value) {
906
- var tmp = this.z1g();
890
+ protoOf(AbstractTermificator).z2w = function (value) {
891
+ var tmp = this.a1g();
907
892
  var tmp_0 = assertItemsAreNotNull_0(value);
908
893
  return tmp.logicListOfSequence(map(tmp_0, AbstractTermificator$handleSequenceAsList$lambda(this)));
909
894
  };
910
- protoOf(AbstractTermificator).m1i = function (value) {
911
- var tmp = this.z1g();
895
+ protoOf(AbstractTermificator).a2x = function (value) {
896
+ var tmp = this.a1g();
912
897
  // Inline function 'kotlin.collections.map' call
913
898
  var this_0 = assertItemsAreNotNull(value);
914
899
  // Inline function 'kotlin.collections.mapTo' call
915
900
  var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
916
- var tmp0_iterator = this_0.r();
917
- while (tmp0_iterator.s()) {
918
- var item = tmp0_iterator.u();
919
- // Inline function 'it.unibo.tuprolog.dsl.AbstractTermificator.handleIterableAsList.<anonymous>' call
920
- var tmp$ret$0 = this.d1i(item);
921
- destination.o(tmp$ret$0);
901
+ var _iterator__ex2g4s = this_0.p();
902
+ while (_iterator__ex2g4s.s()) {
903
+ var item = _iterator__ex2g4s.t();
904
+ var tmp$ret$0 = this.r2w(item);
905
+ destination.m(tmp$ret$0);
922
906
  }
923
907
  return tmp.logicListOfIterable(destination);
924
908
  };
925
- protoOf(AbstractTermificator).n1i = function (value) {
926
- var tmp = this.z1g();
909
+ protoOf(AbstractTermificator).b2x = function (value) {
910
+ var tmp = this.a1g();
927
911
  // Inline function 'kotlin.collections.map' call
928
912
  var this_0 = assertItemsAreNotNull_1(value);
929
913
  // Inline function 'kotlin.collections.mapTo' call
930
914
  var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
931
- var tmp0_iterator = this_0.r();
932
- while (tmp0_iterator.s()) {
933
- var item = tmp0_iterator.u();
934
- // Inline function 'it.unibo.tuprolog.dsl.AbstractTermificator.handleKotlinListAsLogicList.<anonymous>' call
935
- var tmp$ret$0 = this.d1i(item);
936
- destination.o(tmp$ret$0);
915
+ var _iterator__ex2g4s = this_0.p();
916
+ while (_iterator__ex2g4s.s()) {
917
+ var item = _iterator__ex2g4s.t();
918
+ var tmp$ret$0 = this.r2w(item);
919
+ destination.m(tmp$ret$0);
937
920
  }
938
921
  return tmp.logicListOfIterable(destination);
939
922
  };
940
- protoOf(AbstractTermificator).o1i = function (value) {
941
- var tmp = this.z1g();
923
+ protoOf(AbstractTermificator).c2x = function (value) {
924
+ var tmp = this.a1g();
942
925
  // Inline function 'kotlin.collections.map' call
943
926
  var this_0 = assertItemsAreNotNull(value);
944
927
  // Inline function 'kotlin.collections.mapTo' call
945
928
  var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
946
- var tmp0_iterator = this_0.r();
947
- while (tmp0_iterator.s()) {
948
- var item = tmp0_iterator.u();
949
- // Inline function 'it.unibo.tuprolog.dsl.AbstractTermificator.handleSetAsBlock.<anonymous>' call
950
- var tmp$ret$0 = this.d1i(item);
951
- destination.o(tmp$ret$0);
929
+ var _iterator__ex2g4s = this_0.p();
930
+ while (_iterator__ex2g4s.s()) {
931
+ var item = _iterator__ex2g4s.t();
932
+ var tmp$ret$0 = this.r2w(item);
933
+ destination.m(tmp$ret$0);
952
934
  }
953
935
  return tmp.blockOfIterable(destination);
954
936
  };
955
- protoOf(AbstractTermificator).p1i = function (value) {
956
- return this.z1g().tupleOf([this.d1i(value.qd_1), this.d1i(value.rd_1)]);
937
+ protoOf(AbstractTermificator).d2x = function (value) {
938
+ return this.a1g().tupleOf([this.r2w(value.fc_1), this.r2w(value.gc_1)]);
957
939
  };
958
- protoOf(AbstractTermificator).q1i = function (value) {
959
- return this.z1g().tupleOf([this.d1i(value.ei_1), this.d1i(value.fi_1), this.d1i(value.gi_1)]);
940
+ protoOf(AbstractTermificator).e2x = function (value) {
941
+ return this.a1g().tupleOf([this.r2w(value.lh_1), this.r2w(value.mh_1), this.r2w(value.nh_1)]);
960
942
  };
961
- protoOf(AbstractTermificator).r1i = function (value) {
962
- return this.z1g().structOf(':', [this.d1i(value.q2()), this.d1i(value.r2())]);
943
+ protoOf(AbstractTermificator).f2x = function (value) {
944
+ return this.a1g().structOf(':', [this.r2w(value.d2()), this.r2w(value.e2())]);
963
945
  };
964
- protoOf(AbstractTermificator).s1i = function (value) {
965
- var tmp = this.z1g();
946
+ protoOf(AbstractTermificator).g2x = function (value) {
947
+ var tmp = this.a1g();
966
948
  // Inline function 'kotlin.collections.map' call
967
- var this_0 = assertItemsAreNotNull(value.n2());
949
+ var this_0 = assertItemsAreNotNull(value.e1());
968
950
  // Inline function 'kotlin.collections.mapTo' call
969
951
  var destination = ArrayList_init_$Create$(collectionSizeOrDefault(this_0, 10));
970
- var tmp0_iterator = this_0.r();
971
- while (tmp0_iterator.s()) {
972
- var item = tmp0_iterator.u();
973
- // Inline function 'it.unibo.tuprolog.dsl.AbstractTermificator.handleMapAsBlock.<anonymous>' call
974
- var tmp$ret$0 = this.r1i(item);
975
- destination.o(tmp$ret$0);
952
+ var _iterator__ex2g4s = this_0.p();
953
+ while (_iterator__ex2g4s.s()) {
954
+ var item = _iterator__ex2g4s.t();
955
+ var tmp$ret$0 = this.f2x(item);
956
+ destination.m(tmp$ret$0);
976
957
  }
977
958
  return tmp.blockOfIterable(destination);
978
959
  };
979
- protoOf(AbstractTermificator).u1i = function () {
960
+ protoOf(AbstractTermificator).i2x = function () {
980
961
  var tmp = getKClass(Char);
981
- this.t1i(tmp, AbstractTermificator$handleCharAsString$ref(this));
982
- var tmp_0 = PrimitiveClasses_getInstance().c7();
983
- this.t1i(tmp_0, AbstractTermificator$handleBooleanAsTruth$ref(this));
984
- var tmp_1 = PrimitiveClasses_getInstance().j7();
985
- this.t1i(tmp_1, AbstractTermificator$handleStringAsAtomOrVariable$ref(this));
962
+ this.h2x(tmp, AbstractTermificator$handleCharAsString$ref(this));
963
+ var tmp_0 = PrimitiveClasses_getInstance().n9();
964
+ this.h2x(tmp_0, AbstractTermificator$handleBooleanAsTruth$ref(this));
965
+ var tmp_1 = PrimitiveClasses_getInstance().v9();
966
+ this.h2x(tmp_1, AbstractTermificator$handleStringAsAtomOrVariable$ref(this));
986
967
  var tmp_2 = getKClass(BigInteger);
987
- this.t1i(tmp_2, AbstractTermificator$handleBigIntegerAsInteger$ref(this));
968
+ this.h2x(tmp_2, AbstractTermificator$handleBigIntegerAsInteger$ref(this));
988
969
  var tmp_3 = getKClass(BigDecimal);
989
- this.t1i(tmp_3, AbstractTermificator$handleBigDecimalAsReal$ref(this));
990
- var tmp_4 = PrimitiveClasses_getInstance().a7();
991
- this.t1i(tmp_4, AbstractTermificator$handleNumberAsNumeric$ref(this));
992
- var tmp_5 = PrimitiveClasses_getInstance().i7();
993
- this.t1i(tmp_5, AbstractTermificator$handleArrayAsList$ref(this));
970
+ this.h2x(tmp_3, AbstractTermificator$handleBigDecimalAsReal$ref(this));
971
+ var tmp_4 = PrimitiveClasses_getInstance().l9();
972
+ this.h2x(tmp_4, AbstractTermificator$handleNumberAsNumeric$ref(this));
973
+ var tmp_5 = PrimitiveClasses_getInstance().u9();
974
+ this.h2x(tmp_5, AbstractTermificator$handleArrayAsList$ref(this));
994
975
  var tmp_6 = getKClass(Sequence);
995
- this.t1i(tmp_6, AbstractTermificator$handleSequenceAsList$ref(this));
976
+ this.h2x(tmp_6, AbstractTermificator$handleSequenceAsList$ref(this));
996
977
  var tmp_7 = getKClass(Iterable);
997
- this.t1i(tmp_7, AbstractTermificator$handleIterableAsList$ref(this));
978
+ this.h2x(tmp_7, AbstractTermificator$handleIterableAsList$ref(this));
998
979
  };
999
- protoOf(AbstractTermificator).v1i = function () {
980
+ protoOf(AbstractTermificator).j2x = function () {
1000
981
  var tmp = getKClass(Char);
1001
- this.t1i(tmp, AbstractTermificator$handleCharAsString$ref_0(this));
1002
- var tmp_0 = PrimitiveClasses_getInstance().c7();
1003
- this.t1i(tmp_0, AbstractTermificator$handleBooleanAsTruth$ref_0(this));
1004
- var tmp_1 = PrimitiveClasses_getInstance().j7();
1005
- this.t1i(tmp_1, AbstractTermificator$handleStringAsAtomOrVariable$ref_0(this));
982
+ this.h2x(tmp, AbstractTermificator$handleCharAsString$ref_0(this));
983
+ var tmp_0 = PrimitiveClasses_getInstance().n9();
984
+ this.h2x(tmp_0, AbstractTermificator$handleBooleanAsTruth$ref_0(this));
985
+ var tmp_1 = PrimitiveClasses_getInstance().v9();
986
+ this.h2x(tmp_1, AbstractTermificator$handleStringAsAtomOrVariable$ref_0(this));
1006
987
  var tmp_2 = getKClass(BigInteger);
1007
- this.t1i(tmp_2, AbstractTermificator$handleBigIntegerAsInteger$ref_0(this));
988
+ this.h2x(tmp_2, AbstractTermificator$handleBigIntegerAsInteger$ref_0(this));
1008
989
  var tmp_3 = getKClass(BigDecimal);
1009
- this.t1i(tmp_3, AbstractTermificator$handleBigDecimalAsReal$ref_0(this));
1010
- var tmp_4 = PrimitiveClasses_getInstance().a7();
1011
- this.t1i(tmp_4, AbstractTermificator$handleNumberAsNumeric$ref_0(this));
1012
- var tmp_5 = PrimitiveClasses_getInstance().i7();
1013
- this.t1i(tmp_5, AbstractTermificator$handleArrayAsList$ref_0(this));
990
+ this.h2x(tmp_3, AbstractTermificator$handleBigDecimalAsReal$ref_0(this));
991
+ var tmp_4 = PrimitiveClasses_getInstance().l9();
992
+ this.h2x(tmp_4, AbstractTermificator$handleNumberAsNumeric$ref_0(this));
993
+ var tmp_5 = PrimitiveClasses_getInstance().u9();
994
+ this.h2x(tmp_5, AbstractTermificator$handleArrayAsList$ref_0(this));
1014
995
  var tmp_6 = getKClass(Sequence);
1015
- this.t1i(tmp_6, AbstractTermificator$handleSequenceAsList$ref_0(this));
1016
- var tmp_7 = getKClass(List);
1017
- this.t1i(tmp_7, AbstractTermificator$handleKotlinListAsLogicList$ref(this));
1018
- var tmp_8 = getKClass(Set);
1019
- this.t1i(tmp_8, AbstractTermificator$handleSetAsBlock$ref(this));
996
+ this.h2x(tmp_6, AbstractTermificator$handleSequenceAsList$ref_0(this));
997
+ var tmp_7 = getKClass(KtList);
998
+ this.h2x(tmp_7, AbstractTermificator$handleKotlinListAsLogicList$ref(this));
999
+ var tmp_8 = getKClass(KtSet);
1000
+ this.h2x(tmp_8, AbstractTermificator$handleSetAsBlock$ref(this));
1020
1001
  var tmp_9 = getKClass(Pair);
1021
- this.t1i(tmp_9, AbstractTermificator$handlePairAsTuple$ref(this));
1002
+ this.h2x(tmp_9, AbstractTermificator$handlePairAsTuple$ref(this));
1022
1003
  var tmp_10 = getKClass(Triple);
1023
- this.t1i(tmp_10, AbstractTermificator$handleTripletAsTuple$ref(this));
1004
+ this.h2x(tmp_10, AbstractTermificator$handleTripletAsTuple$ref(this));
1024
1005
  var tmp_11 = getKClass(Entry);
1025
- this.t1i(tmp_11, AbstractTermificator$handleKeyValuePairAsStruct$ref(this));
1026
- var tmp_12 = getKClass(Map);
1027
- this.t1i(tmp_12, AbstractTermificator$handleMapAsBlock$ref(this));
1006
+ this.h2x(tmp_11, AbstractTermificator$handleKeyValuePairAsStruct$ref(this));
1007
+ var tmp_12 = getKClass(KtMap);
1008
+ this.h2x(tmp_12, AbstractTermificator$handleMapAsBlock$ref(this));
1028
1009
  var tmp_13 = getKClass(Iterable);
1029
- this.t1i(tmp_13, AbstractTermificator$handleIterableAsList$ref_0(this));
1010
+ this.h2x(tmp_13, AbstractTermificator$handleIterableAsList$ref_0(this));
1030
1011
  };
1031
- protoOf(AbstractTermificator).w1i = function (novel) {
1012
+ protoOf(AbstractTermificator).k2x = function (novel) {
1032
1013
  if (novel) {
1033
- this.v1i();
1014
+ this.j2x();
1034
1015
  } else {
1035
- this.u1i();
1016
+ this.i2x();
1036
1017
  }
1037
1018
  };
1038
1019
  function BaseLogicProgrammingScope() {
@@ -1041,253 +1022,251 @@
1041
1022
  return function_0(Companion_instance_2.empty());
1042
1023
  }
1043
1024
  function raiseErrorConvertingTo(_this__u8e3s4, class_0) {
1044
- throw IllegalArgumentException_init_$Create$('Cannot convert ' + getKClassFromExpression(_this__u8e3s4) + ' into ' + class_0);
1025
+ throw IllegalArgumentException_init_$Create$('Cannot convert ' + toString(getKClassFromExpression(_this__u8e3s4)) + ' into ' + toString(class_0));
1045
1026
  }
1046
1027
  function Companion() {
1047
1028
  }
1048
1029
  protoOf(Companion).empty = function () {
1049
1030
  return this.of();
1050
1031
  };
1051
- protoOf(Companion).y1i = function (scope, termificator, variablesProvider) {
1052
- return new LogicProgrammingScopeImpl(scope, termificator.z1g() === scope ? termificator : termificator.a1h(scope), variablesProvider.z1g() === scope ? variablesProvider : variablesProvider.a1h(scope));
1032
+ protoOf(Companion).m2x = function (scope, termificator, variablesProvider) {
1033
+ return new LogicProgrammingScopeImpl(scope, termificator.a1g() === scope ? termificator : termificator.b1g(scope), variablesProvider.a1g() === scope ? variablesProvider : variablesProvider.b1g(scope));
1053
1034
  };
1054
1035
  protoOf(Companion).of = function (scope, termificator, variablesProvider, $super) {
1055
1036
  scope = scope === VOID ? Companion_instance.empty() : scope;
1056
1037
  termificator = termificator === VOID ? Companion_instance_3.default(scope) : termificator;
1057
- variablesProvider = variablesProvider === VOID ? Companion_instance_0.v13(scope) : variablesProvider;
1058
- return $super === VOID ? this.y1i(scope, termificator, variablesProvider) : $super.y1i.call(this, scope, termificator, variablesProvider);
1038
+ variablesProvider = variablesProvider === VOID ? Companion_instance_0.w12(scope) : variablesProvider;
1039
+ return $super === VOID ? this.m2x(scope, termificator, variablesProvider) : $super.m2x.call(this, scope, termificator, variablesProvider);
1059
1040
  };
1060
1041
  var Companion_instance_2;
1061
1042
  function Companion_getInstance_1() {
1062
1043
  return Companion_instance_2;
1063
1044
  }
1064
1045
  function LogicProgrammingScopeImpl(scope, termificator, variablesProvider) {
1065
- this.z1i_1 = scope;
1066
- this.a1j_1 = termificator;
1067
- this.b1j_1 = variablesProvider;
1046
+ this.n2x_1 = scope;
1047
+ this.o2x_1 = termificator;
1048
+ this.p2x_1 = variablesProvider;
1068
1049
  // Inline function 'kotlin.require' call
1069
- // Inline function 'kotlin.contracts.contract' call
1070
- if (!(this.z1i_1 === this.b1j_1.z1g() ? this.z1i_1 === this.a1j_1.z1g() : false)) {
1071
- // Inline function 'it.unibo.tuprolog.dsl.LogicProgrammingScopeImpl.<anonymous>' call
1050
+ if (!(this.n2x_1 === this.p2x_1.a1g() && this.n2x_1 === this.o2x_1.a1g())) {
1072
1051
  var message = 'The provided Scope should be the same object for both Termificator and VariablesProvider';
1073
1052
  throw IllegalArgumentException_init_$Create$(toString(message));
1074
1053
  }
1075
1054
  }
1076
- protoOf(LogicProgrammingScopeImpl).z1g = function () {
1077
- return this.z1i_1;
1055
+ protoOf(LogicProgrammingScopeImpl).a1g = function () {
1056
+ return this.n2x_1;
1078
1057
  };
1079
- protoOf(LogicProgrammingScopeImpl).x1i = function () {
1080
- return this.a1j_1;
1058
+ protoOf(LogicProgrammingScopeImpl).l2x = function () {
1059
+ return this.o2x_1;
1081
1060
  };
1082
- protoOf(LogicProgrammingScopeImpl).c1h = function () {
1083
- return this.b1j_1.c1h();
1061
+ protoOf(LogicProgrammingScopeImpl).b1g = function (scope) {
1062
+ return new LogicProgrammingScopeImpl(scope, this.o2x_1.b1g(scope), this.p2x_1.b1g(scope));
1084
1063
  };
1085
- protoOf(LogicProgrammingScopeImpl).d1h = function () {
1086
- return this.b1j_1.d1h();
1064
+ protoOf(LogicProgrammingScopeImpl).q2x = function () {
1065
+ return this.b1g(Companion_instance.empty());
1087
1066
  };
1088
- protoOf(LogicProgrammingScopeImpl).u10 = function () {
1089
- return this.b1j_1.u10();
1067
+ protoOf(LogicProgrammingScopeImpl).newScope = function () {
1068
+ return this.q2x();
1090
1069
  };
1091
- protoOf(LogicProgrammingScopeImpl).t10 = function () {
1092
- return this.b1j_1.t10();
1070
+ protoOf(LogicProgrammingScopeImpl).structOf = function (functor, args) {
1071
+ return this.p2x_1.structOf(functor, args);
1093
1072
  };
1094
- protoOf(LogicProgrammingScopeImpl).anonymous = function () {
1095
- return this.b1j_1.anonymous();
1073
+ protoOf(LogicProgrammingScopeImpl).structOfSequence = function (functor, args) {
1074
+ return this.p2x_1.structOfSequence(functor, args);
1096
1075
  };
1097
- protoOf(LogicProgrammingScopeImpl).atomOfChar = function (value) {
1098
- return this.b1j_1.atomOfChar(value);
1076
+ protoOf(LogicProgrammingScopeImpl).structOfIterable = function (functor, args) {
1077
+ return this.p2x_1.structOfIterable(functor, args);
1099
1078
  };
1100
- protoOf(LogicProgrammingScopeImpl).atomOf = function (value) {
1101
- return this.b1j_1.atomOf(value);
1079
+ protoOf(LogicProgrammingScopeImpl).structOfList = function (functor, args) {
1080
+ return this.p2x_1.structOfList(functor, args);
1081
+ };
1082
+ protoOf(LogicProgrammingScopeImpl).tupleOf = function (terms) {
1083
+ return this.p2x_1.tupleOf(terms);
1084
+ };
1085
+ protoOf(LogicProgrammingScopeImpl).tupleOfIterable = function (terms) {
1086
+ return this.p2x_1.tupleOfIterable(terms);
1087
+ };
1088
+ protoOf(LogicProgrammingScopeImpl).tupleOfSequence = function (terms) {
1089
+ return this.p2x_1.tupleOfSequence(terms);
1090
+ };
1091
+ protoOf(LogicProgrammingScopeImpl).logicListOf = function (terms) {
1092
+ return this.p2x_1.logicListOf(terms);
1093
+ };
1094
+ protoOf(LogicProgrammingScopeImpl).logicListOfIterable = function (terms) {
1095
+ return this.p2x_1.logicListOfIterable(terms);
1096
+ };
1097
+ protoOf(LogicProgrammingScopeImpl).logicListOfSequence = function (terms) {
1098
+ return this.p2x_1.logicListOfSequence(terms);
1102
1099
  };
1103
1100
  protoOf(LogicProgrammingScopeImpl).blockOf = function (terms) {
1104
- return this.b1j_1.blockOf(terms);
1101
+ return this.p2x_1.blockOf(terms);
1105
1102
  };
1106
1103
  protoOf(LogicProgrammingScopeImpl).blockOfIterable = function (terms) {
1107
- return this.b1j_1.blockOfIterable(terms);
1104
+ return this.p2x_1.blockOfIterable(terms);
1108
1105
  };
1109
1106
  protoOf(LogicProgrammingScopeImpl).blockOfSequence = function (terms) {
1110
- return this.b1j_1.blockOfSequence(terms);
1107
+ return this.p2x_1.blockOfSequence(terms);
1111
1108
  };
1112
- protoOf(LogicProgrammingScopeImpl).clauseOf = function (head, body) {
1113
- return this.b1j_1.clauseOf(head, body);
1109
+ protoOf(LogicProgrammingScopeImpl).factOf = function (head) {
1110
+ return this.p2x_1.factOf(head);
1114
1111
  };
1115
1112
  protoOf(LogicProgrammingScopeImpl).consOf = function (head, tail) {
1116
- return this.b1j_1.consOf(head, tail);
1113
+ return this.p2x_1.consOf(head, tail);
1114
+ };
1115
+ protoOf(LogicProgrammingScopeImpl).directiveOf = function (body1, body) {
1116
+ return this.p2x_1.directiveOf(body1, body);
1117
1117
  };
1118
1118
  protoOf(LogicProgrammingScopeImpl).containsVar = function (variable) {
1119
- return this.b1j_1.containsVar(variable);
1119
+ return this.p2x_1.containsVar(variable);
1120
1120
  };
1121
1121
  protoOf(LogicProgrammingScopeImpl).contains = function (variable) {
1122
- return this.b1j_1.contains(variable);
1123
- };
1124
- protoOf(LogicProgrammingScopeImpl).directiveOf = function (body1, body) {
1125
- return this.b1j_1.directiveOf(body1, body);
1126
- };
1127
- protoOf(LogicProgrammingScopeImpl).factOf = function (head) {
1128
- return this.b1j_1.factOf(head);
1122
+ return this.p2x_1.contains(variable);
1129
1123
  };
1130
1124
  protoOf(LogicProgrammingScopeImpl).get = function (variable) {
1131
- return this.b1j_1.get(variable);
1125
+ return this.p2x_1.get(variable);
1132
1126
  };
1133
- protoOf(LogicProgrammingScopeImpl).getValue = function (thisRef, property) {
1134
- return this.b1j_1.getValue(thisRef, property);
1135
- };
1136
- protoOf(LogicProgrammingScopeImpl).indicatorOf = function (name, arity) {
1137
- return this.b1j_1.indicatorOf(name, arity);
1127
+ protoOf(LogicProgrammingScopeImpl).where = function (lambda) {
1128
+ return this.p2x_1.where(lambda);
1138
1129
  };
1139
- protoOf(LogicProgrammingScopeImpl).indicatorOfStringInt = function (name, arity) {
1140
- return this.b1j_1.indicatorOfStringInt(name, arity);
1130
+ protoOf(LogicProgrammingScopeImpl).with = function (lambda) {
1131
+ return this.p2x_1.with(lambda);
1141
1132
  };
1142
- protoOf(LogicProgrammingScopeImpl).intOfByte = function (value) {
1143
- return this.b1j_1.intOfByte(value);
1133
+ protoOf(LogicProgrammingScopeImpl).varOf = function (name) {
1134
+ return this.p2x_1.varOf(name);
1144
1135
  };
1145
- protoOf(LogicProgrammingScopeImpl).intOf = function (value) {
1146
- return this.b1j_1.intOf(value);
1136
+ protoOf(LogicProgrammingScopeImpl).varOfChar = function (name) {
1137
+ return this.p2x_1.varOfChar(name);
1147
1138
  };
1148
- protoOf(LogicProgrammingScopeImpl).intOfLong = function (value) {
1149
- return this.b1j_1.intOfLong(value);
1139
+ protoOf(LogicProgrammingScopeImpl).atomOf = function (value) {
1140
+ return this.p2x_1.atomOf(value);
1150
1141
  };
1151
- protoOf(LogicProgrammingScopeImpl).intOfShort = function (value) {
1152
- return this.b1j_1.intOfShort(value);
1142
+ protoOf(LogicProgrammingScopeImpl).atomOfChar = function (value) {
1143
+ return this.p2x_1.atomOfChar(value);
1153
1144
  };
1154
- protoOf(LogicProgrammingScopeImpl).parseInt = function (value) {
1155
- return this.b1j_1.parseInt(value);
1145
+ protoOf(LogicProgrammingScopeImpl).xz = function (terms, last) {
1146
+ return this.p2x_1.xz(terms, last);
1156
1147
  };
1157
- protoOf(LogicProgrammingScopeImpl).parseIntRadix = function (value, radix) {
1158
- return this.b1j_1.parseIntRadix(value, radix);
1148
+ protoOf(LogicProgrammingScopeImpl).yz = function (terms, last) {
1149
+ return this.p2x_1.yz(terms, last);
1159
1150
  };
1160
- protoOf(LogicProgrammingScopeImpl).intOfBigInteger = function (value) {
1161
- return this.b1j_1.intOfBigInteger(value);
1151
+ protoOf(LogicProgrammingScopeImpl).zz = function (terms, last) {
1152
+ return this.p2x_1.zz(terms, last);
1162
1153
  };
1163
- protoOf(LogicProgrammingScopeImpl).v10 = function (terms, last) {
1164
- return this.b1j_1.v10(terms, last);
1154
+ protoOf(LogicProgrammingScopeImpl).ruleOf = function (head, body1, body) {
1155
+ return this.p2x_1.ruleOf(head, body1, body);
1165
1156
  };
1166
- protoOf(LogicProgrammingScopeImpl).w10 = function (terms, last) {
1167
- return this.b1j_1.w10(terms, last);
1157
+ protoOf(LogicProgrammingScopeImpl).clauseOf = function (head, body) {
1158
+ return this.p2x_1.clauseOf(head, body);
1168
1159
  };
1169
- protoOf(LogicProgrammingScopeImpl).x10 = function (terms, last) {
1170
- return this.b1j_1.x10(terms, last);
1160
+ protoOf(LogicProgrammingScopeImpl).indicatorOf = function (name, arity) {
1161
+ return this.p2x_1.indicatorOf(name, arity);
1171
1162
  };
1172
- protoOf(LogicProgrammingScopeImpl).logicListOf = function (terms) {
1173
- return this.b1j_1.logicListOf(terms);
1163
+ protoOf(LogicProgrammingScopeImpl).indicatorOfStringInt = function (name, arity) {
1164
+ return this.p2x_1.indicatorOfStringInt(name, arity);
1174
1165
  };
1175
- protoOf(LogicProgrammingScopeImpl).logicListOfIterable = function (terms) {
1176
- return this.b1j_1.logicListOfIterable(terms);
1166
+ protoOf(LogicProgrammingScopeImpl).anonymous = function () {
1167
+ return this.p2x_1.anonymous();
1177
1168
  };
1178
- protoOf(LogicProgrammingScopeImpl).logicListOfSequence = function (terms) {
1179
- return this.b1j_1.logicListOfSequence(terms);
1169
+ protoOf(LogicProgrammingScopeImpl).whatever = function () {
1170
+ return this.p2x_1.whatever();
1180
1171
  };
1181
- protoOf(LogicProgrammingScopeImpl).numOfByte = function (value) {
1182
- return this.b1j_1.numOfByte(value);
1172
+ protoOf(LogicProgrammingScopeImpl).numOfBigDecimal = function (value) {
1173
+ return this.p2x_1.numOfBigDecimal(value);
1183
1174
  };
1184
1175
  protoOf(LogicProgrammingScopeImpl).numOfDouble = function (value) {
1185
- return this.b1j_1.numOfDouble(value);
1176
+ return this.p2x_1.numOfDouble(value);
1186
1177
  };
1187
1178
  protoOf(LogicProgrammingScopeImpl).numOfFloat = function (value) {
1188
- return this.b1j_1.numOfFloat(value);
1179
+ return this.p2x_1.numOfFloat(value);
1180
+ };
1181
+ protoOf(LogicProgrammingScopeImpl).numOfBigInteger = function (value) {
1182
+ return this.p2x_1.numOfBigInteger(value);
1189
1183
  };
1190
1184
  protoOf(LogicProgrammingScopeImpl).numOfInt = function (value) {
1191
- return this.b1j_1.numOfInt(value);
1185
+ return this.p2x_1.numOfInt(value);
1192
1186
  };
1193
1187
  protoOf(LogicProgrammingScopeImpl).numOfLong = function (value) {
1194
- return this.b1j_1.numOfLong(value);
1195
- };
1196
- protoOf(LogicProgrammingScopeImpl).numOf = function (value) {
1197
- return this.b1j_1.numOf(value);
1188
+ return this.p2x_1.numOfLong(value);
1198
1189
  };
1199
1190
  protoOf(LogicProgrammingScopeImpl).numOfShort = function (value) {
1200
- return this.b1j_1.numOfShort(value);
1191
+ return this.p2x_1.numOfShort(value);
1201
1192
  };
1202
- protoOf(LogicProgrammingScopeImpl).parseNum = function (value) {
1203
- return this.b1j_1.parseNum(value);
1204
- };
1205
- protoOf(LogicProgrammingScopeImpl).numOfBigDecimal = function (value) {
1206
- return this.b1j_1.numOfBigDecimal(value);
1193
+ protoOf(LogicProgrammingScopeImpl).numOfByte = function (value) {
1194
+ return this.p2x_1.numOfByte(value);
1207
1195
  };
1208
- protoOf(LogicProgrammingScopeImpl).numOfBigInteger = function (value) {
1209
- return this.b1j_1.numOfBigInteger(value);
1196
+ protoOf(LogicProgrammingScopeImpl).parseNum = function (value) {
1197
+ return this.p2x_1.parseNum(value);
1210
1198
  };
1211
- protoOf(LogicProgrammingScopeImpl).realOf = function (value) {
1212
- return this.b1j_1.realOf(value);
1199
+ protoOf(LogicProgrammingScopeImpl).numOf = function (value) {
1200
+ return this.p2x_1.numOf(value);
1213
1201
  };
1214
- protoOf(LogicProgrammingScopeImpl).realOfFloat = function (value) {
1215
- return this.b1j_1.realOfFloat(value);
1202
+ protoOf(LogicProgrammingScopeImpl).intOfBigInteger = function (value) {
1203
+ return this.p2x_1.intOfBigInteger(value);
1216
1204
  };
1217
- protoOf(LogicProgrammingScopeImpl).parseReal = function (value) {
1218
- return this.b1j_1.parseReal(value);
1205
+ protoOf(LogicProgrammingScopeImpl).intOf = function (value) {
1206
+ return this.p2x_1.intOf(value);
1219
1207
  };
1220
- protoOf(LogicProgrammingScopeImpl).realOfBigDecimal = function (value) {
1221
- return this.b1j_1.realOfBigDecimal(value);
1208
+ protoOf(LogicProgrammingScopeImpl).intOfLong = function (value) {
1209
+ return this.p2x_1.intOfLong(value);
1222
1210
  };
1223
- protoOf(LogicProgrammingScopeImpl).ruleOf = function (head, body1, body) {
1224
- return this.b1j_1.ruleOf(head, body1, body);
1211
+ protoOf(LogicProgrammingScopeImpl).intOfShort = function (value) {
1212
+ return this.p2x_1.intOfShort(value);
1225
1213
  };
1226
- protoOf(LogicProgrammingScopeImpl).structOf = function (functor, args) {
1227
- return this.b1j_1.structOf(functor, args);
1214
+ protoOf(LogicProgrammingScopeImpl).intOfByte = function (value) {
1215
+ return this.p2x_1.intOfByte(value);
1228
1216
  };
1229
- protoOf(LogicProgrammingScopeImpl).structOfIterable = function (functor, args) {
1230
- return this.b1j_1.structOfIterable(functor, args);
1217
+ protoOf(LogicProgrammingScopeImpl).parseInt = function (value) {
1218
+ return this.p2x_1.parseInt(value);
1231
1219
  };
1232
- protoOf(LogicProgrammingScopeImpl).structOfList = function (functor, args) {
1233
- return this.b1j_1.structOfList(functor, args);
1220
+ protoOf(LogicProgrammingScopeImpl).parseIntRadix = function (value, radix) {
1221
+ return this.p2x_1.parseIntRadix(value, radix);
1234
1222
  };
1235
- protoOf(LogicProgrammingScopeImpl).structOfSequence = function (functor, args) {
1236
- return this.b1j_1.structOfSequence(functor, args);
1223
+ protoOf(LogicProgrammingScopeImpl).realOfBigDecimal = function (value) {
1224
+ return this.p2x_1.realOfBigDecimal(value);
1237
1225
  };
1238
- protoOf(LogicProgrammingScopeImpl).substitutionOf = function (assignments) {
1239
- return this.b1j_1.substitutionOf(assignments);
1226
+ protoOf(LogicProgrammingScopeImpl).realOf = function (value) {
1227
+ return this.p2x_1.realOf(value);
1240
1228
  };
1241
- protoOf(LogicProgrammingScopeImpl).substitutionOfIterable = function (assignments) {
1242
- return this.b1j_1.substitutionOfIterable(assignments);
1229
+ protoOf(LogicProgrammingScopeImpl).realOfFloat = function (value) {
1230
+ return this.p2x_1.realOfFloat(value);
1243
1231
  };
1244
- protoOf(LogicProgrammingScopeImpl).substitutionOfSequence = function (assignments) {
1245
- return this.b1j_1.substitutionOfSequence(assignments);
1232
+ protoOf(LogicProgrammingScopeImpl).parseReal = function (value) {
1233
+ return this.p2x_1.parseReal(value);
1246
1234
  };
1247
1235
  protoOf(LogicProgrammingScopeImpl).truthOf = function (value) {
1248
- return this.b1j_1.truthOf(value);
1249
- };
1250
- protoOf(LogicProgrammingScopeImpl).tupleOf = function (terms) {
1251
- return this.b1j_1.tupleOf(terms);
1252
- };
1253
- protoOf(LogicProgrammingScopeImpl).tupleOfIterable = function (terms) {
1254
- return this.b1j_1.tupleOfIterable(terms);
1255
- };
1256
- protoOf(LogicProgrammingScopeImpl).tupleOfSequence = function (terms) {
1257
- return this.b1j_1.tupleOfSequence(terms);
1236
+ return this.p2x_1.truthOf(value);
1258
1237
  };
1259
1238
  protoOf(LogicProgrammingScopeImpl).unifierOf = function (assignments) {
1260
- return this.b1j_1.unifierOf(assignments);
1239
+ return this.p2x_1.unifierOf(assignments);
1261
1240
  };
1262
1241
  protoOf(LogicProgrammingScopeImpl).unifierOfIterable = function (assignments) {
1263
- return this.b1j_1.unifierOfIterable(assignments);
1242
+ return this.p2x_1.unifierOfIterable(assignments);
1264
1243
  };
1265
1244
  protoOf(LogicProgrammingScopeImpl).unifierOfSequence = function (assignments) {
1266
- return this.b1j_1.unifierOfSequence(assignments);
1245
+ return this.p2x_1.unifierOfSequence(assignments);
1267
1246
  };
1268
- protoOf(LogicProgrammingScopeImpl).varOfChar = function (name) {
1269
- return this.b1j_1.varOfChar(name);
1247
+ protoOf(LogicProgrammingScopeImpl).substitutionOf = function (assignments) {
1248
+ return this.p2x_1.substitutionOf(assignments);
1270
1249
  };
1271
- protoOf(LogicProgrammingScopeImpl).varOf = function (name) {
1272
- return this.b1j_1.varOf(name);
1250
+ protoOf(LogicProgrammingScopeImpl).substitutionOfIterable = function (assignments) {
1251
+ return this.p2x_1.substitutionOfIterable(assignments);
1273
1252
  };
1274
- protoOf(LogicProgrammingScopeImpl).whatever = function () {
1275
- return this.b1j_1.whatever();
1253
+ protoOf(LogicProgrammingScopeImpl).substitutionOfSequence = function (assignments) {
1254
+ return this.p2x_1.substitutionOfSequence(assignments);
1276
1255
  };
1277
- protoOf(LogicProgrammingScopeImpl).where = function (lambda) {
1278
- return this.b1j_1.where(lambda);
1256
+ protoOf(LogicProgrammingScopeImpl).vz = function () {
1257
+ return this.p2x_1.vz();
1279
1258
  };
1280
- protoOf(LogicProgrammingScopeImpl).with = function (lambda) {
1281
- return this.b1j_1.with(lambda);
1259
+ protoOf(LogicProgrammingScopeImpl).wz = function () {
1260
+ return this.p2x_1.wz();
1282
1261
  };
1283
- protoOf(LogicProgrammingScopeImpl).a1h = function (scope) {
1284
- return new LogicProgrammingScopeImpl(scope, this.a1j_1.a1h(scope), this.b1j_1.a1h(scope));
1262
+ protoOf(LogicProgrammingScopeImpl).getValue = function (thisRef, property) {
1263
+ return this.p2x_1.getValue(thisRef, property);
1285
1264
  };
1286
- protoOf(LogicProgrammingScopeImpl).c1j = function () {
1287
- return this.a1h(Companion_instance.empty());
1265
+ protoOf(LogicProgrammingScopeImpl).d1g = function () {
1266
+ return this.p2x_1.d1g();
1288
1267
  };
1289
- protoOf(LogicProgrammingScopeImpl).newScope = function () {
1290
- return this.c1j();
1268
+ protoOf(LogicProgrammingScopeImpl).e1g = function () {
1269
+ return this.p2x_1.e1g();
1291
1270
  };
1292
1271
  function LogicProgrammingScopeWithOperators() {
1293
1272
  }
@@ -1295,22 +1274,19 @@
1295
1274
  }
1296
1275
  function LogicProgrammingScopeWithSubstitutions() {
1297
1276
  }
1298
- function directive$directiveOf(receiver, p0) {
1299
- return receiver.directiveOf(p0, []);
1300
- }
1301
1277
  function MinimalLogicProgrammingScope$invoke$lambda(this$0) {
1302
1278
  return function (it) {
1303
1279
  return this$0.convertToTerm(it);
1304
1280
  };
1305
1281
  }
1306
- function MinimalLogicProgrammingScope$directive$directiveOf$ref($boundThis) {
1307
- return function (p0) {
1308
- return directive$directiveOf($boundThis, p0);
1282
+ function MinimalLogicProgrammingScope$directiveOf$ref(p0) {
1283
+ return function (receiver) {
1284
+ return p0.directiveOf(receiver, []);
1309
1285
  };
1310
1286
  }
1311
- function MinimalLogicProgrammingScope$factOf$ref($boundThis) {
1312
- var l = function (p0) {
1313
- return $boundThis.factOf(p0);
1287
+ function MinimalLogicProgrammingScope$factOf$ref(p0) {
1288
+ var l = function (_this__u8e3s4) {
1289
+ return p0.factOf(_this__u8e3s4);
1314
1290
  };
1315
1291
  l.callableName = 'factOf';
1316
1292
  return l;
@@ -1334,21 +1310,24 @@
1334
1310
  function DefaultTermificator(scope, novel) {
1335
1311
  novel = novel === VOID ? false : novel;
1336
1312
  AbstractTermificator.call(this, scope);
1337
- this.g1j_1 = novel;
1338
- this.w1i(this.g1j_1);
1339
- this.h1j_1 = new NumberTypeTester();
1313
+ this.u2x_1 = novel;
1314
+ this.k2x(this.u2x_1);
1315
+ this.v2x_1 = new NumberTypeTester();
1340
1316
  }
1341
- protoOf(DefaultTermificator).j1i = function (value) {
1317
+ protoOf(DefaultTermificator).x2w = function (value) {
1342
1318
  var tmp;
1343
- if (this.h1j_1.os(value)) {
1344
- tmp = this.z1g().intOfBigInteger(this.h1j_1.ps(value));
1319
+ if (this.v2x_1.qr(value)) {
1320
+ tmp = this.a1g().intOfBigInteger(this.v2x_1.rr(value));
1345
1321
  } else {
1346
- tmp = this.z1g().realOfBigDecimal(this.h1j_1.qs(value));
1322
+ tmp = this.a1g().realOfBigDecimal(this.v2x_1.sr(value));
1347
1323
  }
1348
1324
  return tmp;
1349
1325
  };
1350
- protoOf(DefaultTermificator).a1h = function (scope) {
1351
- return new DefaultTermificator(scope, this.g1j_1);
1326
+ protoOf(DefaultTermificator).b1g = function (scope) {
1327
+ return new DefaultTermificator(scope, this.u2x_1);
1328
+ };
1329
+ protoOf(DefaultTermificator).copy = function (scope, $super) {
1330
+ return this.copy(scope, ($super == null ? true : $super instanceof DefaultTermificator) ? $super : THROW_CCE());
1352
1331
  };
1353
1332
  //region block: post-declaration
1354
1333
  protoOf(AbstractTermificator).copy = copy;
@@ -1364,7 +1343,7 @@
1364
1343
  protoOf(LogicProgrammingScopeImpl).consOfAny = consOfAny;
1365
1344
  protoOf(LogicProgrammingScopeImpl).directiveOfAny = directiveOfAny;
1366
1345
  protoOf(LogicProgrammingScopeImpl).withScope = withScope;
1367
- protoOf(LogicProgrammingScopeImpl).d1j = logicList;
1346
+ protoOf(LogicProgrammingScopeImpl).r2x = logicList;
1368
1347
  protoOf(LogicProgrammingScopeImpl).logicList = logicList_0;
1369
1348
  protoOf(LogicProgrammingScopeImpl).rule = rule;
1370
1349
  protoOf(LogicProgrammingScopeImpl).clause2 = clause2;