@woosh/meep-engine 2.113.13 → 2.113.15
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/build/bundle-worker-image-decoder.js +1 -1
- package/build/meep.cjs +4 -0
- package/build/meep.module.js +4 -0
- package/package.json +1 -1
- package/src/core/binary/BinaryBuffer.d.ts.map +1 -1
- package/src/core/binary/BinaryBuffer.js +15 -4
- package/src/core/collection/array/typed/array_buffer_copy.d.ts +11 -0
- package/src/core/collection/array/typed/array_buffer_copy.d.ts.map +1 -0
- package/src/core/collection/array/typed/array_buffer_copy.js +55 -0
- package/src/core/collection/table/RowFirstTable.d.ts +11 -3
- package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
- package/src/core/collection/table/RowFirstTable.js +63 -33
- package/src/core/math/random/randomIntegerBetween.d.ts.map +1 -1
- package/src/core/math/random/randomIntegerBetween.js +3 -0
- package/src/core/model/reactive/model/ReactiveExpression.d.ts.map +1 -1
- package/src/core/model/reactive/model/ReactiveExpression.js +1 -1
- package/src/core/model/reactive/model/ReactiveUnaryExpression.d.ts +5 -1
- package/src/core/model/reactive/model/ReactiveUnaryExpression.d.ts.map +1 -1
- package/src/core/model/reactive/model/ReactiveUnaryExpression.js +4 -0
- package/src/core/model/reactive/model/arithmetic/ReactiveAdd.d.ts +7 -10
- package/src/core/model/reactive/model/arithmetic/ReactiveAdd.d.ts.map +1 -1
- package/src/core/model/reactive/model/arithmetic/ReactiveAdd.js +19 -13
- package/src/core/model/reactive/model/arithmetic/ReactiveDivide.d.ts +7 -9
- package/src/core/model/reactive/model/arithmetic/ReactiveDivide.d.ts.map +1 -1
- package/src/core/model/reactive/model/arithmetic/ReactiveDivide.js +14 -13
- package/src/core/model/reactive/model/arithmetic/ReactiveMultiply.d.ts +7 -10
- package/src/core/model/reactive/model/arithmetic/ReactiveMultiply.d.ts.map +1 -1
- package/src/core/model/reactive/model/arithmetic/ReactiveMultiply.js +19 -13
- package/src/core/model/reactive/model/arithmetic/ReactiveNegate.d.ts +6 -8
- package/src/core/model/reactive/model/arithmetic/ReactiveNegate.d.ts.map +1 -1
- package/src/core/model/reactive/model/arithmetic/ReactiveNegate.js +14 -12
- package/src/core/model/reactive/model/arithmetic/ReactiveSubtract.d.ts +7 -9
- package/src/core/model/reactive/model/arithmetic/ReactiveSubtract.d.ts.map +1 -1
- package/src/core/model/reactive/model/arithmetic/ReactiveSubtract.js +16 -14
- package/src/core/model/reactive/model/comparative/ReactiveEquals.d.ts +7 -10
- package/src/core/model/reactive/model/comparative/ReactiveEquals.d.ts.map +1 -1
- package/src/core/model/reactive/model/comparative/ReactiveEquals.js +18 -12
- package/src/core/model/reactive/model/comparative/ReactiveGreaterThan.d.ts +7 -9
- package/src/core/model/reactive/model/comparative/ReactiveGreaterThan.d.ts.map +1 -1
- package/src/core/model/reactive/model/comparative/ReactiveGreaterThan.js +15 -14
- package/src/core/model/reactive/model/comparative/ReactiveGreaterThanOrEqual.d.ts +10 -8
- package/src/core/model/reactive/model/comparative/ReactiveGreaterThanOrEqual.d.ts.map +1 -1
- package/src/core/model/reactive/model/comparative/ReactiveGreaterThanOrEqual.js +18 -13
- package/src/core/model/reactive/model/comparative/ReactiveLessThan.d.ts +10 -8
- package/src/core/model/reactive/model/comparative/ReactiveLessThan.d.ts.map +1 -1
- package/src/core/model/reactive/model/comparative/ReactiveLessThan.js +18 -12
- package/src/core/model/reactive/model/comparative/ReactiveLessThanOrEqual.d.ts +10 -8
- package/src/core/model/reactive/model/comparative/ReactiveLessThanOrEqual.d.ts.map +1 -1
- package/src/core/model/reactive/model/comparative/ReactiveLessThanOrEqual.js +18 -12
- package/src/core/model/reactive/model/comparative/ReactiveNotEquals.d.ts +7 -10
- package/src/core/model/reactive/model/comparative/ReactiveNotEquals.d.ts.map +1 -1
- package/src/core/model/reactive/model/comparative/ReactiveNotEquals.js +18 -13
- package/src/core/model/reactive/model/logic/ReactiveAnd.d.ts.map +1 -1
- package/src/core/model/reactive/model/logic/ReactiveAnd.js +18 -13
- package/src/core/model/reactive/model/logic/ReactiveNot.d.ts +19 -9
- package/src/core/model/reactive/model/logic/ReactiveNot.d.ts.map +1 -1
- package/src/core/model/reactive/model/logic/ReactiveNot.js +24 -10
- package/src/core/model/reactive/model/logic/ReactiveOr.d.ts +7 -10
- package/src/core/model/reactive/model/logic/ReactiveOr.d.ts.map +1 -1
- package/src/core/model/reactive/model/logic/ReactiveOr.js +18 -13
- package/src/core/model/reactive/model/terminal/ReactiveLiteralBoolean.d.ts +9 -7
- package/src/core/model/reactive/model/terminal/ReactiveLiteralBoolean.d.ts.map +1 -1
- package/src/core/model/reactive/model/terminal/ReactiveLiteralBoolean.js +14 -11
- package/src/core/model/reactive/model/terminal/ReactiveLiteralNumber.d.ts +9 -7
- package/src/core/model/reactive/model/terminal/ReactiveLiteralNumber.d.ts.map +1 -1
- package/src/core/model/reactive/model/terminal/ReactiveLiteralNumber.js +14 -11
- package/src/core/model/reactive/model/terminal/ReactiveLiteralString.d.ts +10 -8
- package/src/core/model/reactive/model/terminal/ReactiveLiteralString.d.ts.map +1 -1
- package/src/core/model/reactive/model/terminal/ReactiveLiteralString.js +14 -11
- package/src/core/model/reactive/model/terminal/ReactiveReference.d.ts.map +1 -1
- package/src/core/model/reactive/model/terminal/ReactiveReference.js +25 -21
- package/src/core/model/reactive/model/util/createRandomReactiveExpression.d.ts +2 -2
- package/src/core/model/reactive/model/util/createRandomReactiveExpression.d.ts.map +1 -1
- package/src/core/model/reactive/model/util/createRandomReactiveExpression.js +41 -29
- package/src/core/model/reactive/trigger/ReactiveTrigger.d.ts.map +1 -1
- package/src/core/model/reactive/trigger/ReactiveTrigger.js +2 -0
- package/src/core/model/stat/LinearModifier.d.ts.map +1 -1
- package/src/core/model/stat/LinearModifier.js +4 -0
- package/src/core/model/scheme/Schema.d.ts +0 -38
- package/src/core/model/scheme/Schema.d.ts.map +0 -1
- package/src/core/model/scheme/Schema.js +0 -72
- package/src/core/model/scheme/SchemeRegistry.d.ts +0 -19
- package/src/core/model/scheme/SchemeRegistry.d.ts.map +0 -1
- package/src/core/model/scheme/SchemeRegistry.js +0 -55
|
@@ -3,12 +3,17 @@ import { makeArrayBuffer } from "../../binary/makeArrayBuffer.js";
|
|
|
3
3
|
import Signal from "../../events/signal/Signal.js";
|
|
4
4
|
import { max2 } from "../../math/max2.js";
|
|
5
5
|
import { array_copy } from "../array/array_copy.js";
|
|
6
|
+
import { array_buffer_copy } from "../array/typed/array_buffer_copy.js";
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* How much space to reserve in a newly created table, counted in ROWs
|
|
9
10
|
* @type {number}
|
|
10
11
|
*/
|
|
11
|
-
const DEFAULT_CAPACITY = 8
|
|
12
|
+
const DEFAULT_CAPACITY = 8;
|
|
13
|
+
|
|
14
|
+
const ALLOCATION_GROW_FACTOR = 1.5;
|
|
15
|
+
|
|
16
|
+
const ALLOCATION_SHRINK_FACTOR = 0.5;
|
|
12
17
|
|
|
13
18
|
/**
|
|
14
19
|
* Compact binary table storage
|
|
@@ -128,25 +133,25 @@ export class RowFirstTable {
|
|
|
128
133
|
let result = byteLength;
|
|
129
134
|
|
|
130
135
|
|
|
131
|
-
|
|
136
|
+
const uint32_length = byteLength >> 2;
|
|
132
137
|
|
|
133
|
-
|
|
134
|
-
|
|
138
|
+
// to keep hash calculation fast, do a fixed number evenly spaced taps inside the data table
|
|
139
|
+
const tap_count = 31;
|
|
135
140
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
141
|
+
const step_size = max2(
|
|
142
|
+
Math.floor(uint32_length / tap_count),
|
|
143
|
+
1
|
|
144
|
+
);
|
|
140
145
|
|
|
141
|
-
|
|
146
|
+
const step_count = Math.floor(uint32_length / step_size);
|
|
142
147
|
|
|
143
|
-
|
|
144
|
-
|
|
148
|
+
for (let i = 0; i < step_count; i++) {
|
|
149
|
+
const address = (i * step_size) << 2;
|
|
145
150
|
|
|
146
|
-
|
|
151
|
+
const uint32 = dataView.getUint32(address);
|
|
147
152
|
|
|
148
|
-
|
|
149
|
-
|
|
153
|
+
result = ((result << 5) - result) + uint32;
|
|
154
|
+
}
|
|
150
155
|
|
|
151
156
|
return result;
|
|
152
157
|
}
|
|
@@ -182,6 +187,8 @@ export class RowFirstTable {
|
|
|
182
187
|
throw new Error("Generated array was truncated unexpectedly from " + byteSize + " to " + this.data.byteLength);
|
|
183
188
|
}
|
|
184
189
|
|
|
190
|
+
// TODO consider using {@link array_buffer_copy} instead for speed
|
|
191
|
+
|
|
185
192
|
const newArray = new Uint8Array(this.data);
|
|
186
193
|
const oldArray = new Uint8Array(oldData);
|
|
187
194
|
|
|
@@ -217,13 +224,13 @@ export class RowFirstTable {
|
|
|
217
224
|
|
|
218
225
|
if (this.capacity < rowCount) {
|
|
219
226
|
//grow
|
|
220
|
-
const
|
|
221
|
-
const newSize = Math.ceil(rowCount * growFactor);
|
|
227
|
+
const newSize = Math.ceil(rowCount * ALLOCATION_GROW_FACTOR);
|
|
222
228
|
this.setCapacity(newSize);
|
|
223
|
-
} else if (this.capacity *
|
|
229
|
+
} else if (this.capacity * ALLOCATION_SHRINK_FACTOR > rowCount) {
|
|
224
230
|
//shrink
|
|
225
231
|
this.setCapacity(rowCount);
|
|
226
232
|
}
|
|
233
|
+
|
|
227
234
|
}
|
|
228
235
|
|
|
229
236
|
/**
|
|
@@ -308,11 +315,15 @@ export class RowFirstTable {
|
|
|
308
315
|
|
|
309
316
|
/**
|
|
310
317
|
* Insert a number of blank rows at the given offset
|
|
311
|
-
*
|
|
318
|
+
* Table becomes larger as a result
|
|
319
|
+
* NOTE: doesn't send {@link on.added} signal
|
|
312
320
|
* @param {number} index
|
|
313
321
|
* @param {number} row_count
|
|
314
322
|
*/
|
|
315
323
|
insertRows(index, row_count) {
|
|
324
|
+
assert.isNonNegativeInteger(index, 'index');
|
|
325
|
+
assert.isNonNegativeInteger(row_count, 'row_count');
|
|
326
|
+
|
|
316
327
|
const future_length = this.length + row_count;
|
|
317
328
|
|
|
318
329
|
this.resize(future_length);
|
|
@@ -334,12 +345,12 @@ export class RowFirstTable {
|
|
|
334
345
|
}
|
|
335
346
|
|
|
336
347
|
/**
|
|
337
|
-
*
|
|
338
|
-
*
|
|
339
|
-
*
|
|
348
|
+
* Created a new row at the end of the table, does not dispatch {@link on.added} signal
|
|
349
|
+
* Values are undefined, typically it will be 0s, but if data was previously written in that memory region - that data will be retained.
|
|
350
|
+
* Make sure to clear the row or write to it before reading it
|
|
351
|
+
* @return {number} index of the created row
|
|
340
352
|
*/
|
|
341
|
-
|
|
342
|
-
|
|
353
|
+
createEmptyRow() {
|
|
343
354
|
const newRowCount = this.length + 1;
|
|
344
355
|
|
|
345
356
|
this.resize(newRowCount);
|
|
@@ -348,6 +359,17 @@ export class RowFirstTable {
|
|
|
348
359
|
|
|
349
360
|
this.length = newRowCount;
|
|
350
361
|
|
|
362
|
+
return rowIndex;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
/**
|
|
366
|
+
*
|
|
367
|
+
* @param {Array.<number>} values
|
|
368
|
+
* @returns {number} index of newly added row
|
|
369
|
+
*/
|
|
370
|
+
addRow(values) {
|
|
371
|
+
const rowIndex = this.createEmptyRow();
|
|
372
|
+
|
|
351
373
|
this.spec.writeRowMethod(this.dataView, this.spec.bytesPerRecord * rowIndex, values);
|
|
352
374
|
|
|
353
375
|
this.on.added.send2(rowIndex, values);
|
|
@@ -378,14 +400,22 @@ export class RowFirstTable {
|
|
|
378
400
|
|
|
379
401
|
const onAdded = this.on.added;
|
|
380
402
|
|
|
403
|
+
/**
|
|
404
|
+
*
|
|
405
|
+
* @param {number} index
|
|
406
|
+
*/
|
|
381
407
|
function addOneSignaling(index) {
|
|
382
408
|
addOneSilent(index);
|
|
383
409
|
onAdded.send2(index, row);
|
|
384
410
|
}
|
|
385
411
|
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
412
|
+
/**
|
|
413
|
+
*
|
|
414
|
+
* @param {number} index
|
|
415
|
+
*/
|
|
416
|
+
function addOneSilent(index) {
|
|
417
|
+
valueSupplier(index, row);
|
|
418
|
+
writeRowMethod(dataView, bytesPerRecord * index, row);
|
|
389
419
|
}
|
|
390
420
|
|
|
391
421
|
//depending on whether signal is being listened, pick signaling or silent generator
|
|
@@ -444,12 +474,10 @@ export class RowFirstTable {
|
|
|
444
474
|
|
|
445
475
|
this.length = other.length;
|
|
446
476
|
|
|
447
|
-
const target = new Uint8Array(this.data);
|
|
448
|
-
const source = new Uint8Array(other.data);
|
|
449
|
-
|
|
450
477
|
// copy data
|
|
451
478
|
const data_byte_count = other.spec.bytesPerRecord * record_count;
|
|
452
|
-
|
|
479
|
+
|
|
480
|
+
array_buffer_copy(other.data, 0, this.data, 0, data_byte_count);
|
|
453
481
|
}
|
|
454
482
|
|
|
455
483
|
/**
|
|
@@ -492,7 +520,7 @@ export class RowFirstTable {
|
|
|
492
520
|
}
|
|
493
521
|
|
|
494
522
|
/**
|
|
495
|
-
*
|
|
523
|
+
* Read a single row of values from the table
|
|
496
524
|
* @param {number} index
|
|
497
525
|
* @param {number[]} [result] where row values are to be stored
|
|
498
526
|
* @returns {number[]} result
|
|
@@ -508,7 +536,7 @@ export class RowFirstTable {
|
|
|
508
536
|
}
|
|
509
537
|
|
|
510
538
|
/**
|
|
511
|
-
*
|
|
539
|
+
* Write a single row of values
|
|
512
540
|
* @param {number} index
|
|
513
541
|
* @param {number[]} record
|
|
514
542
|
*/
|
|
@@ -517,6 +545,8 @@ export class RowFirstTable {
|
|
|
517
545
|
|
|
518
546
|
const spec = this.spec;
|
|
519
547
|
|
|
548
|
+
assert.greaterThanOrEqual(record.length, spec.getColumnCount(), 'input record length is too small');
|
|
549
|
+
|
|
520
550
|
spec.writeRowMethod(this.dataView, spec.bytesPerRecord * index, record);
|
|
521
551
|
}
|
|
522
552
|
|
|
@@ -539,8 +569,8 @@ export class RowFirstTable {
|
|
|
539
569
|
|
|
540
570
|
const last_row_index = length - 1;
|
|
541
571
|
|
|
542
|
-
|
|
543
572
|
const traversal_limit = last_row_index >>> 1;
|
|
573
|
+
|
|
544
574
|
for (let i = 0; i <= traversal_limit; i++) {
|
|
545
575
|
const address = i * bpr;
|
|
546
576
|
array_copy(wrapper, address, copy_buffer, 0, bpr);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"randomIntegerBetween.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/random/randomIntegerBetween.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,4DAJW,MAAM,OACN,MAAM,GACJ,MAAM,
|
|
1
|
+
{"version":3,"file":"randomIntegerBetween.d.ts","sourceRoot":"","sources":["../../../../../src/core/math/random/randomIntegerBetween.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,4DAJW,MAAM,OACN,MAAM,GACJ,MAAM,CAclB"}
|
|
@@ -15,5 +15,8 @@ export function randomIntegerBetween(random, min, max) {
|
|
|
15
15
|
|
|
16
16
|
const roll = random();
|
|
17
17
|
|
|
18
|
+
assert.greaterThanOrEqual(roll, 0, 'random should return value between 0 and 1');
|
|
19
|
+
assert.lessThanOrEqual(roll, 1, 'random should return value between 0 and 1');
|
|
20
|
+
|
|
18
21
|
return Math.round(roll * span) + min;
|
|
19
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactiveExpression.d.ts","sourceRoot":"","sources":["../../../../../../src/core/model/reactive/model/ReactiveExpression.js"],"names":[],"mappings":"AAIA;;GAEG;AACH;IAEQ,0DAA6B;IAGjC,uBAEC;IAED,cAEC;IAED;;;;OAIG;IACH,wCAFa,OAAO,CAQnB;IAED;;;OAGG;IACH,UAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,QAFa,MAAM,CAIlB;IAED;;OAEG;IACH,YAFa,CAAC,GAAC,OAAO,GAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"ReactiveExpression.d.ts","sourceRoot":"","sources":["../../../../../../src/core/model/reactive/model/ReactiveExpression.js"],"names":[],"mappings":"AAIA;;GAEG;AACH;IAEQ,0DAA6B;IAGjC,uBAEC;IAED,cAEC;IAED;;;;OAIG;IACH,wCAFa,OAAO,CAQnB;IAED;;;OAGG;IACH,UAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,QAFa,MAAM,CAIlB;IAED;;OAEG;IACH,YAFa,CAAC,GAAC,OAAO,GAAC,MAAM,GAAC,MAAM,CAInC;IAED;;;;OAIG;IACH,4CAEC;IAED;;;OAGG;IACH,mBAFY,MAAM,CAQjB;IAED;;;OAGG;IACH,iCAIC;IAED;;;;OAIG;IACH,sBAFa,OAAO,GAAC,MAAM,GAAC,MAAM,CAIjC;IAGL,cAAqC;IAErC;;;OAGG;IACH,+BAFU,OAAO,CAEgC;CARhD;mBA/FkB,kCAAkC"}
|
|
@@ -30,7 +30,11 @@ export class ReactiveUnaryExpression<T, R> extends ReactiveExpression<any> {
|
|
|
30
30
|
*/
|
|
31
31
|
hash(): number;
|
|
32
32
|
getValue(): void;
|
|
33
|
-
|
|
33
|
+
/**
|
|
34
|
+
* @readonly
|
|
35
|
+
* @type {boolean}
|
|
36
|
+
*/
|
|
37
|
+
readonly isUnaryExpression: boolean;
|
|
34
38
|
}
|
|
35
39
|
import { ReactiveExpression } from "./ReactiveExpression.js";
|
|
36
40
|
//# sourceMappingURL=ReactiveUnaryExpression.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactiveUnaryExpression.d.ts","sourceRoot":"","sources":["../../../../../../src/core/model/reactive/model/ReactiveUnaryExpression.js"],"names":[],"mappings":"AAIA;;GAEG;AACH;IACI,cASC;IANG;;;OAGG;IACH,QAFU,mBAAmB,CAAC,CAAC,CAEb;IAItB,uBAMC;IAED,qBAIC;IAED,2CAIC;IAED,2BAMC;IAED,mBAIC;IAED;;OAEG;IACH,kCAEC;IAED,0BAIC;IAED;;;;OAIG;IACH,wCAFa,OAAO,CAOnB;IAED;;;OAGG;IACH,QAFa,MAAM,CAIlB;IAED,iBAEC;IAGL,
|
|
1
|
+
{"version":3,"file":"ReactiveUnaryExpression.d.ts","sourceRoot":"","sources":["../../../../../../src/core/model/reactive/model/ReactiveUnaryExpression.js"],"names":[],"mappings":"AAIA;;GAEG;AACH;IACI,cASC;IANG;;;OAGG;IACH,QAFU,mBAAmB,CAAC,CAAC,CAEb;IAItB,uBAMC;IAED,qBAIC;IAED,2CAIC;IAED,2BAMC;IAED,mBAIC;IAED;;OAEG;IACH,kCAEC;IAED,0BAIC;IAED;;;;OAIG;IACH,wCAFa,OAAO,CAOnB;IAED;;;OAGG;IACH,QAFa,MAAM,CAIlB;IAED,iBAEC;IAGL;;;OAGG;IACH,4BAFU,OAAO,CAEkC;CANlD;mCAvFkC,yBAAyB"}
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
export class ReactiveAdd extends ReactiveBinaryExpression {
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* @param {ReactiveExpression} left
|
|
5
|
+
* @param {ReactiveExpression} right
|
|
6
|
+
* @returns {ReactiveAdd}
|
|
7
|
+
*/
|
|
8
|
+
static from(left: ReactiveExpression, right: ReactiveExpression): ReactiveAdd;
|
|
2
9
|
/**
|
|
3
10
|
*
|
|
4
11
|
* @param {number} left
|
|
@@ -27,16 +34,6 @@ export class ReactiveAdd extends ReactiveBinaryExpression {
|
|
|
27
34
|
* @type {boolean}
|
|
28
35
|
*/
|
|
29
36
|
readonly isReactiveAdd: boolean;
|
|
30
|
-
isCommutative: boolean;
|
|
31
|
-
}
|
|
32
|
-
export namespace ReactiveAdd {
|
|
33
|
-
/**
|
|
34
|
-
*
|
|
35
|
-
* @param {ReactiveExpression} left
|
|
36
|
-
* @param {ReactiveExpression} right
|
|
37
|
-
* @returns {ReactiveAdd}
|
|
38
|
-
*/
|
|
39
|
-
function from(left: ReactiveExpression, right: ReactiveExpression): ReactiveAdd;
|
|
40
37
|
}
|
|
41
38
|
import { ReactiveBinaryExpression } from "../ReactiveBinaryExpression.js";
|
|
42
39
|
//# sourceMappingURL=ReactiveAdd.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactiveAdd.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveAdd.js"],"names":[],"mappings":"AAGA;
|
|
1
|
+
{"version":3,"file":"ReactiveAdd.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveAdd.js"],"names":[],"mappings":"AAGA;IAgCI;;;;;OAKG;IACH,kEAFa,WAAW,CAQvB;IA3CD;;;;;OAKG;IACH,gBAJW,MAAM,SACN,MAAM,GACJ,MAAM,CAIlB;IAED;;;OAGG;IACH,SAFY,WAAW,CAQtB;IAMD,iBAEC;IAmBL;;;OAGG;IACH,mBAFU,WAAS,MAAM,CAEK;IAE9B;;;OAGG;IACH,iCAFU,OAAO,CAE2B;IAE5C;;;OAGG;IACH,wBAFU,OAAO,CAEkB;CAlBlC;yCAhDwC,gCAAgC"}
|
|
@@ -31,6 +31,22 @@ export class ReactiveAdd extends ReactiveBinaryExpression {
|
|
|
31
31
|
toCode() {
|
|
32
32
|
return `( ${this.left.toCode()} + ${this.right.toCode()} )`
|
|
33
33
|
}
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @param {ReactiveExpression} left
|
|
39
|
+
* @param {ReactiveExpression} right
|
|
40
|
+
* @returns {ReactiveAdd}
|
|
41
|
+
*/
|
|
42
|
+
static from(left, right) {
|
|
43
|
+
const r = new ReactiveAdd();
|
|
44
|
+
|
|
45
|
+
r.connect(left, right);
|
|
46
|
+
|
|
47
|
+
return r;
|
|
48
|
+
}
|
|
49
|
+
|
|
34
50
|
}
|
|
35
51
|
|
|
36
52
|
/**
|
|
@@ -51,18 +67,8 @@ ReactiveAdd.prototype.isArithmeticExpression = true;
|
|
|
51
67
|
*/
|
|
52
68
|
ReactiveAdd.prototype.isReactiveAdd = true;
|
|
53
69
|
|
|
54
|
-
ReactiveAdd.prototype.isCommutative = true;
|
|
55
|
-
|
|
56
70
|
/**
|
|
57
|
-
*
|
|
58
|
-
* @
|
|
59
|
-
* @param {ReactiveExpression} right
|
|
60
|
-
* @returns {ReactiveAdd}
|
|
71
|
+
* @readonly
|
|
72
|
+
* @type {boolean}
|
|
61
73
|
*/
|
|
62
|
-
ReactiveAdd.
|
|
63
|
-
const r = new ReactiveAdd();
|
|
64
|
-
|
|
65
|
-
r.connect(left, right);
|
|
66
|
-
|
|
67
|
-
return r;
|
|
68
|
-
};
|
|
74
|
+
ReactiveAdd.prototype.isCommutative = true;
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
export class ReactiveDivide extends ReactiveBinaryExpression {
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* @param {ReactiveExpression} left
|
|
5
|
+
* @param {ReactiveExpression} right
|
|
6
|
+
* @returns {ReactiveDivide}
|
|
7
|
+
*/
|
|
8
|
+
static from(left: ReactiveExpression, right: ReactiveExpression): ReactiveDivide;
|
|
2
9
|
/**
|
|
3
10
|
*
|
|
4
11
|
* @param {number} left
|
|
@@ -28,14 +35,5 @@ export class ReactiveDivide extends ReactiveBinaryExpression {
|
|
|
28
35
|
*/
|
|
29
36
|
readonly isReactiveDivide: boolean;
|
|
30
37
|
}
|
|
31
|
-
export namespace ReactiveDivide {
|
|
32
|
-
/**
|
|
33
|
-
*
|
|
34
|
-
* @param {ReactiveExpression} left
|
|
35
|
-
* @param {ReactiveExpression} right
|
|
36
|
-
* @returns {ReactiveDivide}
|
|
37
|
-
*/
|
|
38
|
-
function from(left: ReactiveExpression, right: ReactiveExpression): ReactiveDivide;
|
|
39
|
-
}
|
|
40
38
|
import { ReactiveBinaryExpression } from "../ReactiveBinaryExpression.js";
|
|
41
39
|
//# sourceMappingURL=ReactiveDivide.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactiveDivide.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveDivide.js"],"names":[],"mappings":"AAGA;
|
|
1
|
+
{"version":3,"file":"ReactiveDivide.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveDivide.js"],"names":[],"mappings":"AAGA;IA+BI;;;;;OAKG;IACH,kEAFa,cAAc,CAQ1B;IA1CD;;;;;OAKG;IACH,gBAJW,MAAM,SACN,MAAM,GACJ,MAAM,CAIlB;IAED;;;OAGG;IACH,SAFY,cAAc,CAQzB;IAMD,iBAEC;IAiBL;;;OAGG;IACH,mBAFU,WAAS,MAAM,CAEQ;IAEjC;;;OAGG;IACH,iCAFU,OAAO,CAE8B;IAE/C;;;OAGG;IACH,2BAFU,OAAO,CAEwB;CAlBxC;yCA9CwC,gCAAgC"}
|
|
@@ -31,6 +31,20 @@ export class ReactiveDivide extends ReactiveBinaryExpression {
|
|
|
31
31
|
toCode() {
|
|
32
32
|
return `( ${this.left.toCode()} / ${this.right.toCode()} )`
|
|
33
33
|
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
*
|
|
37
|
+
* @param {ReactiveExpression} left
|
|
38
|
+
* @param {ReactiveExpression} right
|
|
39
|
+
* @returns {ReactiveDivide}
|
|
40
|
+
*/
|
|
41
|
+
static from(left, right) {
|
|
42
|
+
const r = new ReactiveDivide();
|
|
43
|
+
|
|
44
|
+
r.connect(left, right);
|
|
45
|
+
|
|
46
|
+
return r;
|
|
47
|
+
}
|
|
34
48
|
}
|
|
35
49
|
|
|
36
50
|
/**
|
|
@@ -51,16 +65,3 @@ ReactiveDivide.prototype.isArithmeticExpression = true;
|
|
|
51
65
|
*/
|
|
52
66
|
ReactiveDivide.prototype.isReactiveDivide = true;
|
|
53
67
|
|
|
54
|
-
/**
|
|
55
|
-
*
|
|
56
|
-
* @param {ReactiveExpression} left
|
|
57
|
-
* @param {ReactiveExpression} right
|
|
58
|
-
* @returns {ReactiveDivide}
|
|
59
|
-
*/
|
|
60
|
-
ReactiveDivide.from = function (left, right) {
|
|
61
|
-
const r = new ReactiveDivide();
|
|
62
|
-
|
|
63
|
-
r.connect(left, right);
|
|
64
|
-
|
|
65
|
-
return r;
|
|
66
|
-
};
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
export class ReactiveMultiply extends ReactiveBinaryExpression {
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* @param {ReactiveExpression} left
|
|
5
|
+
* @param {ReactiveExpression} right
|
|
6
|
+
* @returns {ReactiveMultiply}
|
|
7
|
+
*/
|
|
8
|
+
static from(left: ReactiveExpression, right: ReactiveExpression): ReactiveMultiply;
|
|
2
9
|
/**
|
|
3
10
|
*
|
|
4
11
|
* @param {number} left
|
|
@@ -27,16 +34,6 @@ export class ReactiveMultiply extends ReactiveBinaryExpression {
|
|
|
27
34
|
* @type {boolean}
|
|
28
35
|
*/
|
|
29
36
|
readonly isReactiveMultiply: boolean;
|
|
30
|
-
isCommutative: boolean;
|
|
31
|
-
}
|
|
32
|
-
export namespace ReactiveMultiply {
|
|
33
|
-
/**
|
|
34
|
-
*
|
|
35
|
-
* @param {ReactiveExpression} left
|
|
36
|
-
* @param {ReactiveExpression} right
|
|
37
|
-
* @returns {ReactiveMultiply}
|
|
38
|
-
*/
|
|
39
|
-
function from(left: ReactiveExpression, right: ReactiveExpression): ReactiveMultiply;
|
|
40
37
|
}
|
|
41
38
|
import { ReactiveBinaryExpression } from "../ReactiveBinaryExpression.js";
|
|
42
39
|
//# sourceMappingURL=ReactiveMultiply.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactiveMultiply.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveMultiply.js"],"names":[],"mappings":"AAGA;
|
|
1
|
+
{"version":3,"file":"ReactiveMultiply.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveMultiply.js"],"names":[],"mappings":"AAGA;IAgCI;;;;;OAKG;IACH,kEAFa,gBAAgB,CAQ5B;IA3CD;;;;;OAKG;IACH,gBAJW,MAAM,SACN,MAAM,GACJ,MAAM,CAIlB;IAED;;;OAGG;IACH,SAFY,gBAAgB,CAQ3B;IAMD,iBAEC;IAmBL;;;OAGG;IACH,mBAFU,WAAS,MAAM,CAEU;IAEnC;;;OAGG;IACH,iCAFU,OAAO,CAEgC;IAEjD;;;OAGG;IACH,6BAFU,OAAO,CAE4B;CAlB5C;yCAhDwC,gCAAgC"}
|
|
@@ -31,6 +31,22 @@ export class ReactiveMultiply extends ReactiveBinaryExpression {
|
|
|
31
31
|
toCode() {
|
|
32
32
|
return `( ${this.left.toCode()} * ${this.right.toCode()} )`
|
|
33
33
|
}
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @param {ReactiveExpression} left
|
|
39
|
+
* @param {ReactiveExpression} right
|
|
40
|
+
* @returns {ReactiveMultiply}
|
|
41
|
+
*/
|
|
42
|
+
static from(left, right) {
|
|
43
|
+
const r = new ReactiveMultiply();
|
|
44
|
+
|
|
45
|
+
r.connect(left, right);
|
|
46
|
+
|
|
47
|
+
return r;
|
|
48
|
+
}
|
|
49
|
+
|
|
34
50
|
}
|
|
35
51
|
|
|
36
52
|
/**
|
|
@@ -51,18 +67,8 @@ ReactiveMultiply.prototype.isArithmeticExpression = true;
|
|
|
51
67
|
*/
|
|
52
68
|
ReactiveMultiply.prototype.isReactiveMultiply = true;
|
|
53
69
|
|
|
54
|
-
ReactiveMultiply.prototype.isCommutative = true;
|
|
55
|
-
|
|
56
70
|
/**
|
|
57
|
-
*
|
|
58
|
-
* @
|
|
59
|
-
* @param {ReactiveExpression} right
|
|
60
|
-
* @returns {ReactiveMultiply}
|
|
71
|
+
* @readonly
|
|
72
|
+
* @type {boolean}
|
|
61
73
|
*/
|
|
62
|
-
ReactiveMultiply.
|
|
63
|
-
const r = new ReactiveMultiply();
|
|
64
|
-
|
|
65
|
-
r.connect(left, right);
|
|
66
|
-
|
|
67
|
-
return r;
|
|
68
|
-
};
|
|
74
|
+
ReactiveMultiply.prototype.isCommutative = true;
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
export class ReactiveNegate extends ReactiveUnaryExpression<any, any> {
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* @param {ReactiveExpression} source
|
|
5
|
+
* @returns {ReactiveNegate}
|
|
6
|
+
*/
|
|
7
|
+
static from(source: ReactiveExpression): ReactiveNegate;
|
|
2
8
|
constructor();
|
|
3
9
|
/**
|
|
4
10
|
*
|
|
@@ -29,13 +35,5 @@ export class ReactiveNegate extends ReactiveUnaryExpression<any, any> {
|
|
|
29
35
|
*/
|
|
30
36
|
readonly isReactiveNegate: boolean;
|
|
31
37
|
}
|
|
32
|
-
export namespace ReactiveNegate {
|
|
33
|
-
/**
|
|
34
|
-
*
|
|
35
|
-
* @param {ReactiveExpression} source
|
|
36
|
-
* @returns {ReactiveNegate}
|
|
37
|
-
*/
|
|
38
|
-
function from(source: ReactiveExpression): ReactiveNegate;
|
|
39
|
-
}
|
|
40
38
|
import { ReactiveUnaryExpression } from "../ReactiveUnaryExpression.js";
|
|
41
39
|
//# sourceMappingURL=ReactiveNegate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactiveNegate.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveNegate.js"],"names":[],"mappings":"AAGA;
|
|
1
|
+
{"version":3,"file":"ReactiveNegate.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveNegate.js"],"names":[],"mappings":"AAGA;IA+BI;;;;OAIG;IACH,yCAFa,cAAc,CAQ1B;IApCM,cAWP;IAhBA;;;;OAIG;IACH,aAHW,MAAM,GACJ,MAAM,CAIlB;IAED;;;OAGG;IACH,SAFY,cAAc,CAQzB;IAED,4BAEC;IAED,iBAEC;IAiBL;;;OAGG;IACH,mBAFU,WAAS,MAAM,CAEQ;IAEjC;;;OAGG;IACH,iCAFU,OAAO,CAE8B;IAE/C;;;OAGG;IACH,2BAFU,OAAO,CAEwB;CAlBxC;wCA7CuC,+BAA+B"}
|
|
@@ -30,6 +30,20 @@ export class ReactiveNegate extends ReactiveUnaryExpression {
|
|
|
30
30
|
toCode() {
|
|
31
31
|
return `-${this.source.toCode()}`
|
|
32
32
|
}
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
*
|
|
37
|
+
* @param {ReactiveExpression} source
|
|
38
|
+
* @returns {ReactiveNegate}
|
|
39
|
+
*/
|
|
40
|
+
static from(source) {
|
|
41
|
+
const r = new ReactiveNegate();
|
|
42
|
+
|
|
43
|
+
r.connect(source);
|
|
44
|
+
|
|
45
|
+
return r;
|
|
46
|
+
}
|
|
33
47
|
}
|
|
34
48
|
|
|
35
49
|
/**
|
|
@@ -51,15 +65,3 @@ ReactiveNegate.prototype.isArithmeticExpression = true;
|
|
|
51
65
|
ReactiveNegate.prototype.isReactiveNegate = true;
|
|
52
66
|
|
|
53
67
|
|
|
54
|
-
/**
|
|
55
|
-
*
|
|
56
|
-
* @param {ReactiveExpression} source
|
|
57
|
-
* @returns {ReactiveNegate}
|
|
58
|
-
*/
|
|
59
|
-
ReactiveNegate.from = function (source) {
|
|
60
|
-
const r = new ReactiveNegate();
|
|
61
|
-
|
|
62
|
-
r.connect(source);
|
|
63
|
-
|
|
64
|
-
return r;
|
|
65
|
-
};
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
export class ReactiveSubtract extends ReactiveBinaryExpression {
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* @param {ReactiveExpression} left
|
|
5
|
+
* @param {ReactiveExpression} right
|
|
6
|
+
* @returns {ReactiveSubtract}
|
|
7
|
+
*/
|
|
8
|
+
static from(left: ReactiveExpression, right: ReactiveExpression): ReactiveSubtract;
|
|
2
9
|
/**
|
|
3
10
|
*
|
|
4
11
|
* @param {number} left
|
|
@@ -28,14 +35,5 @@ export class ReactiveSubtract extends ReactiveBinaryExpression {
|
|
|
28
35
|
*/
|
|
29
36
|
readonly isReactiveSubtract: boolean;
|
|
30
37
|
}
|
|
31
|
-
export namespace ReactiveSubtract {
|
|
32
|
-
/**
|
|
33
|
-
*
|
|
34
|
-
* @param {ReactiveExpression} left
|
|
35
|
-
* @param {ReactiveExpression} right
|
|
36
|
-
* @returns {ReactiveSubtract}
|
|
37
|
-
*/
|
|
38
|
-
function from(left: ReactiveExpression, right: ReactiveExpression): ReactiveSubtract;
|
|
39
|
-
}
|
|
40
38
|
import { ReactiveBinaryExpression } from "../ReactiveBinaryExpression.js";
|
|
41
39
|
//# sourceMappingURL=ReactiveSubtract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactiveSubtract.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveSubtract.js"],"names":[],"mappings":"AAGA;
|
|
1
|
+
{"version":3,"file":"ReactiveSubtract.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/model/reactive/model/arithmetic/ReactiveSubtract.js"],"names":[],"mappings":"AAGA;IAgCI;;;;;OAKG;IACH,kEAFa,gBAAgB,CAQ5B;IA3CD;;;;;OAKG;IACH,gBAJW,MAAM,SACN,MAAM,GACJ,MAAM,CAIlB;IAED;;;OAGG;IACH,SAFY,gBAAgB,CAQ3B;IAMD,iBAEC;IAmBL;;;OAGG;IACH,mBAFU,WAAS,MAAM,CAEU;IAEnC;;;OAGG;IACH,iCAFU,OAAO,CAEgC;IAEjD;;;OAGG;IACH,6BAFU,OAAO,CAE4B;CAlB5C;yCAhDwC,gCAAgC"}
|
|
@@ -31,6 +31,22 @@ export class ReactiveSubtract extends ReactiveBinaryExpression {
|
|
|
31
31
|
toCode() {
|
|
32
32
|
return `( ${this.left.toCode()} - ${this.right.toCode()} )`
|
|
33
33
|
}
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @param {ReactiveExpression} left
|
|
39
|
+
* @param {ReactiveExpression} right
|
|
40
|
+
* @returns {ReactiveSubtract}
|
|
41
|
+
*/
|
|
42
|
+
static from(left, right) {
|
|
43
|
+
const r = new ReactiveSubtract();
|
|
44
|
+
|
|
45
|
+
r.connect(left, right);
|
|
46
|
+
|
|
47
|
+
return r;
|
|
48
|
+
}
|
|
49
|
+
|
|
34
50
|
}
|
|
35
51
|
|
|
36
52
|
/**
|
|
@@ -51,17 +67,3 @@ ReactiveSubtract.prototype.isArithmeticExpression = true;
|
|
|
51
67
|
*/
|
|
52
68
|
ReactiveSubtract.prototype.isReactiveSubtract = true;
|
|
53
69
|
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
*
|
|
57
|
-
* @param {ReactiveExpression} left
|
|
58
|
-
* @param {ReactiveExpression} right
|
|
59
|
-
* @returns {ReactiveSubtract}
|
|
60
|
-
*/
|
|
61
|
-
ReactiveSubtract.from = function (left, right) {
|
|
62
|
-
const r = new ReactiveSubtract();
|
|
63
|
-
|
|
64
|
-
r.connect(left, right);
|
|
65
|
-
|
|
66
|
-
return r;
|
|
67
|
-
};
|