@woosh/meep-engine 2.96.0 → 2.98.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/build/bundle-worker-terrain.js +1 -1
  2. package/build/meep.cjs +892 -687
  3. package/build/meep.min.js +1 -1
  4. package/build/meep.module.js +892 -687
  5. package/package.json +1 -1
  6. package/src/core/binary/BitSet.d.ts +2 -2
  7. package/src/core/binary/BitSet.d.ts.map +1 -1
  8. package/src/core/binary/BitSet.js +8 -5
  9. package/src/core/bvh2/bvh3/query/bvh_query_leaves_ray.js +1 -1
  10. package/src/core/bvh2/bvh3/query/bvh_query_user_data_generic.js +1 -1
  11. package/src/core/bvh2/bvh3/query/bvh_query_user_data_ray.d.ts.map +1 -1
  12. package/src/core/bvh2/bvh3/query/bvh_query_user_data_ray.js +3 -2
  13. package/src/core/collection/array/arrayQuickSort.js +2 -2
  14. package/src/core/collection/array/array_compute_max.d.ts +9 -0
  15. package/src/core/collection/array/array_compute_max.d.ts.map +1 -0
  16. package/src/core/collection/array/{computeArrayMax.js → array_compute_max.js} +1 -1
  17. package/src/core/collection/array/array_compute_min.d.ts +9 -0
  18. package/src/core/collection/array/array_compute_min.d.ts.map +1 -0
  19. package/src/core/collection/array/{computeArrayMin.js → array_compute_min.js} +1 -1
  20. package/src/core/collection/array/array_compute_min_max.d.ts.map +1 -1
  21. package/src/core/collection/array/array_compute_min_max.js +1 -0
  22. package/src/core/collection/array/array_swap.d.ts.map +1 -1
  23. package/src/core/collection/array/array_swap.js +11 -8
  24. package/src/core/collection/array/array_swap_one.d.ts +8 -0
  25. package/src/core/collection/array/array_swap_one.d.ts.map +1 -0
  26. package/src/core/collection/array/{arraySwapElements.js → array_swap_one.js} +1 -1
  27. package/src/core/collection/array/iterator/AbstractArrayIterator.d.ts.map +1 -0
  28. package/src/core/collection/array/iterator/ArrayIteratorRandom.d.ts.map +1 -0
  29. package/src/core/collection/array/{ArrayIteratorRandom.js → iterator/ArrayIteratorRandom.js} +2 -2
  30. package/src/core/collection/array/iterator/ArrayIteratorSequential.d.ts.map +1 -0
  31. package/src/core/collection/array/randomizeArrayElementOrder.js +2 -2
  32. package/src/core/collection/map/HashMap.js +10 -10
  33. package/src/core/collection/map/ObservedMap.d.ts +7 -4
  34. package/src/core/collection/map/ObservedMap.d.ts.map +1 -1
  35. package/src/core/collection/map/ObservedMap.js +4 -1
  36. package/src/core/collection/queue/Deque.d.ts.map +1 -1
  37. package/src/core/collection/queue/Deque.js +82 -36
  38. package/src/core/geom/3d/aabb/aabb3_intersects_ray.js +10 -10
  39. package/src/core/graph/v2/Graph.d.ts.map +1 -1
  40. package/src/core/graph/v2/Graph.js +9 -0
  41. package/src/core/math/spline/computeNonuniformCaltmullRomSplineDerivative.d.ts +16 -0
  42. package/src/core/math/spline/computeNonuniformCaltmullRomSplineDerivative.d.ts.map +1 -0
  43. package/src/core/math/spline/computeNonuniformCaltmullRomSplineDerivative.js +90 -0
  44. package/src/core/parser/simple/ParserError.d.ts +11 -6
  45. package/src/core/parser/simple/ParserError.d.ts.map +1 -1
  46. package/src/core/parser/simple/ParserError.js +51 -4
  47. package/src/core/parser/simple/Token.d.ts.map +1 -1
  48. package/src/core/parser/simple/Token.js +8 -2
  49. package/src/core/parser/simple/TokenType.d.ts +1 -5
  50. package/src/core/parser/simple/TokenType.d.ts.map +1 -1
  51. package/src/core/parser/simple/TokenType.js +1 -1
  52. package/src/core/parser/simple/readBooleanToken.d.ts.map +1 -1
  53. package/src/core/parser/simple/readBooleanToken.js +6 -1
  54. package/src/core/parser/simple/readHexToken.d.ts.map +1 -1
  55. package/src/core/parser/simple/readHexToken.js +7 -2
  56. package/src/core/parser/simple/readIdentifierToken.d.ts.map +1 -1
  57. package/src/core/parser/simple/readIdentifierToken.js +6 -1
  58. package/src/core/parser/simple/readLiteralToken.d.ts.map +1 -1
  59. package/src/core/parser/simple/readLiteralToken.js +8 -3
  60. package/src/core/parser/simple/readNumberToken.d.ts.map +1 -1
  61. package/src/core/parser/simple/readNumberToken.js +7 -2
  62. package/src/core/parser/simple/readReferenceToken.d.ts.map +1 -1
  63. package/src/core/parser/simple/readReferenceToken.js +6 -1
  64. package/src/core/parser/simple/readStringToken.d.ts.map +1 -1
  65. package/src/core/parser/simple/readStringToken.js +6 -1
  66. package/src/core/parser/simple/readUnsignedIntegerToken.d.ts.map +1 -1
  67. package/src/core/parser/simple/readUnsignedIntegerToken.js +7 -2
  68. package/src/core/parser/simple/skipWhitespace.d.ts.map +1 -1
  69. package/src/core/parser/simple/skipWhitespace.js +8 -0
  70. package/src/core/primitives/strings/string_jaro_distance.d.ts +10 -0
  71. package/src/core/primitives/strings/string_jaro_distance.d.ts.map +1 -0
  72. package/src/core/primitives/strings/string_jaro_distance.js +127 -0
  73. package/src/core/primitives/strings/string_jaro_winkler.d.ts.map +1 -1
  74. package/src/core/primitives/strings/string_jaro_winkler.js +5 -105
  75. package/src/core/primitives/strings/string_repeat.d.ts +9 -0
  76. package/src/core/primitives/strings/string_repeat.d.ts.map +1 -0
  77. package/src/core/primitives/strings/string_repeat.js +26 -0
  78. package/src/engine/asset/AssetManager.d.ts.map +1 -1
  79. package/src/engine/development/performance/RingBufferMetric.d.ts.map +1 -1
  80. package/src/engine/development/performance/RingBufferMetric.js +5 -5
  81. package/src/engine/ecs/terrain/ecs/BuildLightTexture.d.ts.map +1 -1
  82. package/src/engine/ecs/terrain/ecs/BuildLightTexture.js +15 -22
  83. package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
  84. package/src/engine/graphics/ecs/camera/Camera.js +23 -16
  85. package/src/engine/graphics/ecs/path/testPathDisplaySystem.js +142 -10
  86. package/src/engine/graphics/ecs/path/tube/build/TubePathBuilder.d.ts.map +1 -1
  87. package/src/engine/graphics/ecs/path/tube/build/TubePathBuilder.js +9 -9
  88. package/src/engine/graphics/ecs/path/tube/build/build_geometry_catmullrom.d.ts.map +1 -1
  89. package/src/engine/graphics/ecs/path/tube/build/build_geometry_catmullrom.js +173 -23
  90. package/src/engine/graphics/ecs/path/tube/prototypeAnimatedPathMask.js +16 -2
  91. package/src/engine/graphics/filter/ImageFilter.d.ts +2 -2
  92. package/src/engine/graphics/filter/ImageFilter.d.ts.map +1 -1
  93. package/src/engine/graphics/filter/ImageFilter.js +3 -3
  94. package/src/engine/graphics/render/RendererPool.d.ts +14 -1
  95. package/src/engine/graphics/render/RendererPool.d.ts.map +1 -1
  96. package/src/engine/graphics/render/RendererPool.js +43 -1
  97. package/src/engine/graphics/render/forward_plus/LightManager.js +2 -2
  98. package/src/engine/graphics/sh3/path_tracer/PathTracer.d.ts +2 -1
  99. package/src/engine/graphics/sh3/path_tracer/PathTracer.d.ts.map +1 -1
  100. package/src/engine/graphics/sh3/path_tracer/PathTracer.js +23 -50
  101. package/src/engine/graphics/sh3/path_tracer/getBiasedNormalSample.d.ts +9 -0
  102. package/src/engine/graphics/sh3/path_tracer/getBiasedNormalSample.d.ts.map +1 -1
  103. package/src/engine/graphics/sh3/path_tracer/getBiasedNormalSample.js +53 -3
  104. package/src/engine/graphics/sh3/path_tracer/prototypePathTracer.js +3 -3
  105. package/src/engine/graphics/texture/sampler/convertTexture2Sampler2D.d.ts +1 -1
  106. package/src/engine/graphics/texture/sampler/convertTexture2Sampler2D.d.ts.map +1 -1
  107. package/src/engine/graphics/texture/sampler/convertTexture2Sampler2D.js +42 -36
  108. package/src/engine/graphics/texture/sampler/debug/debug_draw_sampler.d.ts +3 -0
  109. package/src/engine/graphics/texture/sampler/debug/debug_draw_sampler.d.ts.map +1 -0
  110. package/src/engine/graphics/texture/sampler/debug/debug_draw_sampler.js +34 -0
  111. package/src/engine/graphics/texture/sampler/debug/debug_draw_sampler_grid.d.ts +10 -0
  112. package/src/engine/graphics/texture/sampler/debug/debug_draw_sampler_grid.d.ts.map +1 -0
  113. package/src/engine/graphics/texture/sampler/debug/debug_draw_sampler_grid.js +89 -0
  114. package/src/engine/graphics/texture/sampler/debug/prototypeSamplerFiltering.d.ts.map +1 -0
  115. package/src/engine/graphics/texture/sampler/{prototypeSamplerFiltering.js → debug/prototypeSamplerFiltering.js} +105 -113
  116. package/src/generation/grid/generation/GridTaskDensityMarkerDistribution.d.ts.map +1 -1
  117. package/src/generation/grid/generation/GridTaskDensityMarkerDistribution.js +8 -8
  118. package/src/generation/markers/GridActionRuleSet.d.ts.map +1 -1
  119. package/src/generation/markers/GridActionRuleSet.js +5 -5
  120. package/src/core/binary/byteArrayToString.d.ts +0 -9
  121. package/src/core/binary/byteArrayToString.d.ts.map +0 -1
  122. package/src/core/binary/byteArrayToString.js +0 -28
  123. package/src/core/collection/array/AbstractArrayIterator.d.ts.map +0 -1
  124. package/src/core/collection/array/ArrayIteratorRandom.d.ts.map +0 -1
  125. package/src/core/collection/array/ArrayIteratorSequential.d.ts.map +0 -1
  126. package/src/core/collection/array/arrayPickMinElement.d.ts +0 -8
  127. package/src/core/collection/array/arrayPickMinElement.d.ts.map +0 -1
  128. package/src/core/collection/array/arrayPickMinElement.js +0 -43
  129. package/src/core/collection/array/arraySwapElements.d.ts +0 -8
  130. package/src/core/collection/array/arraySwapElements.d.ts.map +0 -1
  131. package/src/core/collection/array/computeArrayMax.d.ts +0 -9
  132. package/src/core/collection/array/computeArrayMax.d.ts.map +0 -1
  133. package/src/core/collection/array/computeArrayMin.d.ts +0 -9
  134. package/src/core/collection/array/computeArrayMin.d.ts.map +0 -1
  135. package/src/engine/graphics/texture/sampler/prototypeSamplerFiltering.d.ts.map +0 -1
  136. /package/src/core/collection/array/{AbstractArrayIterator.d.ts → iterator/AbstractArrayIterator.d.ts} +0 -0
  137. /package/src/core/collection/array/{AbstractArrayIterator.js → iterator/AbstractArrayIterator.js} +0 -0
  138. /package/src/core/collection/array/{ArrayIteratorRandom.d.ts → iterator/ArrayIteratorRandom.d.ts} +0 -0
  139. /package/src/core/collection/array/{ArrayIteratorSequential.d.ts → iterator/ArrayIteratorSequential.d.ts} +0 -0
  140. /package/src/core/collection/array/{ArrayIteratorSequential.js → iterator/ArrayIteratorSequential.js} +0 -0
  141. /package/src/engine/graphics/texture/sampler/{prototypeSamplerFiltering.d.ts → debug/prototypeSamplerFiltering.d.ts} +0 -0
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "description": "Fully featured ECS game engine written in JavaScript",
6
6
  "type": "module",
7
7
  "author": "Alexander Goldring",
8
- "version": "2.96.0",
8
+ "version": "2.98.0",
9
9
  "main": "build/meep.module.js",
10
10
  "module": "build/meep.module.js",
11
11
  "exports": {
@@ -34,9 +34,9 @@ export class BitSet {
34
34
  setShrinkFactor(x: number): void;
35
35
  /**
36
36
  *
37
- * @param {number} numBits
37
+ * @param {number} bit_count
38
38
  */
39
- setCapacity(numBits: number): void;
39
+ setCapacity(bit_count: number): void;
40
40
  /**
41
41
  * Number of bits currently used for flags.
42
42
  * @returns {number}
@@ -1 +1 @@
1
- {"version":3,"file":"BitSet.d.ts","sourceRoot":"","sources":["../../../../src/core/binary/BitSet.js"],"names":[],"mappings":"AA6DA;;;GAGG;AACH,+BA0BC;;IAzBG;;;;OAIG;IACH,iBAAiB;IAEjB;;;;OAIG;IACH,mBAAoB;IAEpB;;;;OAIG;IACH,sBAA0D;IAE1D;;OAEG;IACH,gBAFU,MAAM,CAEmB;IAGvC,sBAEC;IAED;;;OAGG;IACH,mBAFW,MAAM,QAOhB;IAED;;;OAGG;IACH,qBAFW,MAAM,QAOhB;IAED;;;OAGG;IACH,QAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,YAFa,MAAM,CAIlB;IAO2B,iBAsB3B;IAED,uBAMC;IAO8B,oBAyB9B;IAED;;;;OAIG;IACH,oCAqCC;IAED;;;;OAIG;IACH,4BAFa,MAAM,CAuDlB;IAED;;;;OAIG;IACH,8BAFa,MAAM,CAkDlB;IAED;;;;OAIG;IACH,0BAFW,OAAO,QAmCjB;IAED;;;OAGG;IACH,2BAEC;IAED;;;;OAIG;IACH,qBAHW,MAAM,YACN,MAAM,QAWhB;IAED;;;;OAIG;IACH,uBAHW,MAAM,YACN,MAAM,QAShB;IAGD;;;OAGG;IACH,SAFW,MAAM,SAIhB;IAED;;;;OAIG;IACH,oBAFa,OAAO,CAkBnB;IAED;;;;OAIG;IACH,iBAHW,MAAM,GACJ,OAAO,CAUnB;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACJ,OAAO,CAUnB;IAED;;;;;OAKG;IACH,sBAJW,MAAM,eACN,MAAM,aACN,MAAM,QAShB;IAED;;;;;OAKG;IACH,qBAJW,MAAM,eACN,MAAM,aACN,MAAM,QAShB;IAED;;;;;OAKG;IACH,gBAJW,MAAM,eACN,MAAM,aACN,MAAM,QAQhB;IAED;;OAEG;IACH,cAgBC;IAED;;;OAGG;IACH,YAFW,MAAM,QAoChB;;;IAED;;;;OAIG;IACH,sCASC"}
1
+ {"version":3,"file":"BitSet.d.ts","sourceRoot":"","sources":["../../../../src/core/binary/BitSet.js"],"names":[],"mappings":"AA6DA;;;GAGG;AACH,+BA0BC;;IAzBG;;;;OAIG;IACH,iBAAiB;IAEjB;;;;OAIG;IACH,mBAAoB;IAEpB;;;;OAIG;IACH,sBAA0D;IAE1D;;OAEG;IACH,gBAFU,MAAM,CAEmB;IAGvC,sBAEC;IAED;;;OAGG;IACH,mBAFW,MAAM,QAOhB;IAED;;;OAGG;IACH,uBAFW,MAAM,QAUhB;IAED;;;OAGG;IACH,QAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,YAFa,MAAM,CAIlB;IAO2B,iBAsB3B;IAED,uBAMC;IAO8B,oBAyB9B;IAED;;;;OAIG;IACH,oCAqCC;IAED;;;;OAIG;IACH,4BAFa,MAAM,CAuDlB;IAED;;;;OAIG;IACH,8BAFa,MAAM,CAkDlB;IAED;;;;OAIG;IACH,0BAFW,OAAO,QAmCjB;IAED;;;OAGG;IACH,2BAEC;IAED;;;;OAIG;IACH,qBAHW,MAAM,YACN,MAAM,QAWhB;IAED;;;;OAIG;IACH,uBAHW,MAAM,YACN,MAAM,QAShB;IAGD;;;OAGG;IACH,SAFW,MAAM,SAIhB;IAED;;;;OAIG;IACH,oBAFa,OAAO,CAkBnB;IAED;;;;OAIG;IACH,iBAHW,MAAM,GACJ,OAAO,CAUnB;IAED;;;;OAIG;IACH,mBAHW,MAAM,GACJ,OAAO,CAUnB;IAED;;;;;OAKG;IACH,sBAJW,MAAM,eACN,MAAM,aACN,MAAM,QAShB;IAED;;;;;OAKG;IACH,qBAJW,MAAM,eACN,MAAM,aACN,MAAM,QAShB;IAED;;;;;OAKG;IACH,gBAJW,MAAM,eACN,MAAM,aACN,MAAM,QAQhB;IAED;;OAEG;IACH,cAgBC;IAED;;;OAGG;IACH,YAFW,MAAM,QAoChB;;;IAED;;;;OAIG;IACH,sCASC"}
@@ -108,13 +108,16 @@ BitSet.prototype.setShrinkFactor = function (x) {
108
108
 
109
109
  /**
110
110
  *
111
- * @param {number} numBits
111
+ * @param {number} bit_count
112
112
  */
113
- BitSet.prototype.setCapacity = function (numBits) {
114
- if (this.__length > numBits) {
115
- throw new Error(`Current length is greater than requested size`);
113
+ BitSet.prototype.setCapacity = function (bit_count) {
114
+ assert.isNonNegativeInteger(bit_count, "bit_count");
115
+
116
+ if (this.__length > bit_count) {
117
+ throw new Error(`Current length(=${this.__length}) is greater than requested size(=${bit_count})`);
116
118
  }
117
- this.__resize(numBits);
119
+
120
+ this.__resize(bit_count);
118
121
  };
119
122
 
120
123
  /**
@@ -76,8 +76,8 @@ export function bvh_query_leaves_ray(
76
76
  if (child_1 !== NULL_NODE) {
77
77
 
78
78
  // this is not a leaf node, push children onto traversal stack
79
- stack[stack.pointer++] = child_1;
80
79
  stack[stack.pointer++] = uint32[address + COLUMN_CHILD_2];
80
+ stack[stack.pointer++] = child_1;
81
81
 
82
82
  } else {
83
83
  // leaf node
@@ -65,8 +65,8 @@ export function bvh_query_user_data_generic(
65
65
  const child2 = bvh.node_get_child2(node);
66
66
 
67
67
  // write to stack in reverse order, so that fist child ends up being visited first
68
- stack[stack.pointer++] = child1;
69
68
  stack[stack.pointer++] = child2;
69
+ stack[stack.pointer++] = child1;
70
70
 
71
71
  } else {
72
72
  // leaf node
@@ -1 +1 @@
1
- {"version":3,"file":"bvh_query_user_data_ray.d.ts","sourceRoot":"","sources":["../../../../../../src/core/bvh2/bvh3/query/bvh_query_user_data_ray.js"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;GAaG;AACH,wDAXW,MAAM,UACN,MAAM,EAAE,iBACR,MAAM,YACN,MAAM,YACN,MAAM,YACN,MAAM,eACN,MAAM,eACN,MAAM,eACN,MAAM,GACJ,MAAM,CAsElB"}
1
+ {"version":3,"file":"bvh_query_user_data_ray.d.ts","sourceRoot":"","sources":["../../../../../../src/core/bvh2/bvh3/query/bvh_query_user_data_ray.js"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;GAaG;AACH,wDAXW,MAAM,UACN,MAAM,EAAE,iBACR,MAAM,YACN,MAAM,YACN,MAAM,YACN,MAAM,eACN,MAAM,eACN,MAAM,eACN,MAAM,GACJ,MAAM,CAwElB"}
@@ -4,7 +4,6 @@ import { COLUMN_CHILD_1, COLUMN_CHILD_2, COLUMN_USER_DATA, ELEMENT_WORD_COUNT, N
4
4
 
5
5
  const stack = SCRATCH_UINT32_TRAVERSAL_STACK;
6
6
 
7
-
8
7
  /**
9
8
  *
10
9
  * @param {BVH} bvh
@@ -76,8 +75,10 @@ export function bvh_query_user_data_ray(
76
75
  if (child_1 !== NULL_NODE) {
77
76
 
78
77
  // this is not a leaf node, push children onto traversal stack
78
+ const child_2 = uint32[address + COLUMN_CHILD_2];
79
+
80
+ stack[stack.pointer++] = child_2;
79
81
  stack[stack.pointer++] = child_1;
80
- stack[stack.pointer++] = uint32[address + COLUMN_CHILD_2];
81
82
 
82
83
  } else {
83
84
  // leaf node
@@ -1,4 +1,4 @@
1
- import { arraySwapElements } from "./arraySwapElements.js";
1
+ import { array_swap_one } from "./array_swap_one.js";
2
2
 
3
3
  const stack = [];
4
4
 
@@ -16,7 +16,7 @@ export function arrayQuickSort(
16
16
  data,
17
17
  score_function, score_function_context,
18
18
  start, end,
19
- swap_operator = arraySwapElements, swap_context = undefined
19
+ swap_operator = array_swap_one, swap_context = undefined
20
20
  ) {
21
21
  if (start >= end) {
22
22
  // section of 0 size, nothing to sort
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @template V
3
+ * @param {V[]} data
4
+ * @param {number} [start]
5
+ * @param {number} [end]
6
+ * @return {number}
7
+ */
8
+ export function array_compute_max<V>(data: V[], start?: number, end?: number): number;
9
+ //# sourceMappingURL=array_compute_max.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_compute_max.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/array/array_compute_max.js"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wDAJW,MAAM,QACN,MAAM,GACL,MAAM,CAajB"}
@@ -5,7 +5,7 @@
5
5
  * @param {number} [end]
6
6
  * @return {number}
7
7
  */
8
- export function computeArrayMax(data, start = 0, end = data.length) {
8
+ export function array_compute_max(data, start = 0, end = data.length) {
9
9
  let result = Number.NEGATIVE_INFINITY;
10
10
 
11
11
  for (let i = start; i < end; i++) {
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @template V
3
+ * @param {V[]} data
4
+ * @param {number} [start]
5
+ * @param {number} [end]
6
+ * @return {number}
7
+ */
8
+ export function array_compute_min<V>(data: V[], start?: number, end?: number): number;
9
+ //# sourceMappingURL=array_compute_min.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_compute_min.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/array/array_compute_min.js"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wDAJW,MAAM,QACN,MAAM,GACL,MAAM,CAajB"}
@@ -5,7 +5,7 @@
5
5
  * @param {number} [end]
6
6
  * @return {number}
7
7
  */
8
- export function computeArrayMin(data, start = 0, end = data.length) {
8
+ export function array_compute_min(data, start = 0, end = data.length) {
9
9
  let result = Number.POSITIVE_INFINITY;
10
10
 
11
11
  for (let i = start; i < end; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"array_compute_min_max.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/array/array_compute_min_max.js"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,4CAHW,MAAM,EAAE,GACP,MAAM,EAAE,CAanB"}
1
+ {"version":3,"file":"array_compute_min_max.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/array/array_compute_min_max.js"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,4CAHW,MAAM,EAAE,GACP,MAAM,EAAE,CAcnB"}
@@ -11,6 +11,7 @@ export function array_compute_min_max(data) {
11
11
 
12
12
  let min = Number.POSITIVE_INFINITY;
13
13
  let max = Number.NEGATIVE_INFINITY;
14
+
14
15
  for (let i = 0; i < point_count; i++) {
15
16
  min = min2(data[i], min);
16
17
  max = max2(data[i], max);
@@ -1 +1 @@
1
- {"version":3,"file":"array_swap.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/array/array_swap.js"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,gDALW,MAAM,oBAEN,MAAM,UACN,MAAM,QAehB"}
1
+ {"version":3,"file":"array_swap.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/array/array_swap.js"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,gDALW,MAAM,oBAEN,MAAM,UACN,MAAM,QAkBhB"}
@@ -6,17 +6,20 @@
6
6
  * @param {number} b_offset
7
7
  * @param {number} length How many elements should be moved
8
8
  */
9
- export function array_swap(a, a_offset, b, b_offset, length) {
9
+ export function array_swap(
10
+ a, a_offset,
11
+ b, b_offset,
12
+ length
13
+ ) {
10
14
 
11
- let i, j, k;
15
+ for (let k = 0; k < length; k++) {
16
+ const i = a_offset + k;
17
+ const j = b_offset + k;
12
18
 
13
- for (k = 0; k < length; k++) {
14
- i = a_offset + k;
15
- j = b_offset + k;
16
-
17
- const t = b[j];
19
+ const swap = b[j];
18
20
 
19
21
  b[j] = a[i];
20
- a[i] = t;
22
+ a[i] = swap;
21
23
  }
24
+
22
25
  }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @template T
3
+ * @param {T[]} array
4
+ * @param {number} index0
5
+ * @param {number} index1
6
+ */
7
+ export function array_swap_one<T>(array: T[], index0: number, index1: number): void;
8
+ //# sourceMappingURL=array_swap_one.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_swap_one.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/array/array_swap_one.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,sDAHW,MAAM,UACN,MAAM,QAOhB"}
@@ -4,7 +4,7 @@
4
4
  * @param {number} index0
5
5
  * @param {number} index1
6
6
  */
7
- export function arraySwapElements(array, index0, index1) {
7
+ export function array_swap_one(array, index0, index1) {
8
8
  const t = array[index0];
9
9
 
10
10
  array[index0] = array[index1];
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractArrayIterator.d.ts","sourceRoot":"","sources":["../../../../../../src/core/collection/array/iterator/AbstractArrayIterator.js"],"names":[],"mappings":"AAAA;;GAEG;AACH;IACI;;;OAGG;IACH,iBAFW,CAAC,EAAE,QASb;IANG;;;;OAIG;IACH,kBAHU,CAAC,EAAE,CAGK;IAGtB;;OAEG;IACH,aAFW;QAAC,KAAK,EAAC,CAAC,CAAC;QAAC,IAAI,EAAC,OAAO,CAAA;KAAC,QAIjC;CACJ"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrayIteratorRandom.d.ts","sourceRoot":"","sources":["../../../../../../src/core/collection/array/iterator/ArrayIteratorRandom.js"],"names":[],"mappings":"AAIA;IACI,cAOC;IAJG,YAAY;IACZ,kBAAoB;IAEpB,uBAA+B;IAGnC;;;OAGG;IACH,WAFW,MAAM,QAIhB;IAED,4BAYC;IAED,wBAgBC;CACJ;sCAnDqC,4BAA4B"}
@@ -1,6 +1,6 @@
1
- import { seededRandom } from "../../math/random/seededRandom.js";
1
+ import { seededRandom } from "../../../math/random/seededRandom.js";
2
+ import { randomizeArrayElementOrder } from "../randomizeArrayElementOrder.js";
2
3
  import { AbstractArrayIterator } from "./AbstractArrayIterator.js";
3
- import { randomizeArrayElementOrder } from "./randomizeArrayElementOrder.js";
4
4
 
5
5
  export class ArrayIteratorRandom extends AbstractArrayIterator {
6
6
  constructor() {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrayIteratorSequential.d.ts","sourceRoot":"","sources":["../../../../../../src/core/collection/array/iterator/ArrayIteratorSequential.js"],"names":[],"mappings":"AAEA;IACI,cAIC;IADG,YAAY;IAGhB,4BAIC;IAED,wBAcC;CACJ;sCA9BqC,4BAA4B"}
@@ -1,5 +1,5 @@
1
1
  import { randomIntegerBetween } from "../../math/random/randomIntegerBetween.js";
2
- import { arraySwapElements } from "./arraySwapElements.js";
2
+ import { array_swap_one } from "./array_swap_one.js";
3
3
 
4
4
  /**
5
5
  * Randomly re-orders of items in-place
@@ -19,6 +19,6 @@ export function randomizeArrayElementOrder(random, array) {
19
19
  continue;
20
20
  }
21
21
 
22
- arraySwapElements(array, i, t);
22
+ array_swap_one(array, i, t);
23
23
  }
24
24
  }
@@ -6,7 +6,7 @@ import { min2 } from "../../math/min2.js";
6
6
  import { invokeObjectEquals } from "../../model/object/invokeObjectEquals.js";
7
7
  import { invokeObjectHash } from "../../model/object/invokeObjectHash.js";
8
8
  import { array_copy } from "../array/array_copy.js";
9
- import { arraySwapElements } from "../array/arraySwapElements.js";
9
+ import { array_swap_one } from "../array/array_swap_one.js";
10
10
  import { UintArrayForCount } from "../array/typed/uint_array_for_count.js";
11
11
 
12
12
  /*
@@ -38,7 +38,7 @@ export function generate_next_linear_congruential_index(index, mask) {
38
38
  /**
39
39
  * @template K,V
40
40
  */
41
- class MapEntry {
41
+ class HashMapEntry {
42
42
  /**
43
43
  *
44
44
  * @param {K} key
@@ -126,7 +126,7 @@ const UNDEFINED_BIN_INDEX = ~0;
126
126
 
127
127
  /**
128
128
  * @template K,V
129
- * @param {MapEntry<K,V>} record
129
+ * @param {HashMapEntry<K,V>} record
130
130
  * @param {number} hash
131
131
  * @param {K} key
132
132
  * @param {function(a:K,b:K):boolean} equality_op
@@ -168,7 +168,7 @@ export class HashMap {
168
168
 
169
169
  /**
170
170
  * Note that dead entries are marked as such with a special reserved hash values, so records can be reused for new entries
171
- * @type {Array<MapEntry<K,V>>}
171
+ * @type {Array<HashMapEntry<K,V>>}
172
172
  */
173
173
  #entries = new Array(0);
174
174
 
@@ -358,7 +358,7 @@ export class HashMap {
358
358
  entry.key = k;
359
359
  entry.value = v;
360
360
  } else {
361
- this.#entries[i] = new MapEntry(k, v, hash);
361
+ this.#entries[i] = new HashMapEntry(k, v, hash);
362
362
  }
363
363
 
364
364
  return i;
@@ -366,7 +366,7 @@ export class HashMap {
366
366
 
367
367
  /**
368
368
  *
369
- * @param {MapEntry<K,V>} entry
369
+ * @param {HashMapEntry<K,V>} entry
370
370
  */
371
371
  #deallocate(entry) {
372
372
 
@@ -634,7 +634,7 @@ export class HashMap {
634
634
  }
635
635
 
636
636
  /**
637
- * @type {MapEntry<K,V>}
637
+ * @type {HashMapEntry<K,V>}
638
638
  */
639
639
  const entry = this.#entries[bin - ENTRY_BASE];
640
640
 
@@ -685,7 +685,7 @@ export class HashMap {
685
685
 
686
686
  if (new_index !== existing_entry_index) {
687
687
  // move entries to the new position, compacting holes
688
- arraySwapElements(entries, new_index, existing_entry_index);
688
+ array_swap_one(entries, new_index, existing_entry_index);
689
689
  }
690
690
 
691
691
  let bin_index = this.#compute_bin_index(hash);
@@ -746,7 +746,7 @@ export class HashMap {
746
746
  }
747
747
 
748
748
  /**
749
- * @type {MapEntry<K,V>}
749
+ * @type {HashMapEntry<K,V>}
750
750
  */
751
751
  const entry = entries[bin - ENTRY_BASE];
752
752
 
@@ -818,7 +818,7 @@ export class HashMap {
818
818
  }
819
819
 
820
820
  /**
821
- * @type {MapEntry<K,V>}
821
+ * @type {HashMapEntry<K,V>}
822
822
  */
823
823
  const entry = entries[bin - ENTRY_BASE];
824
824
 
@@ -1,8 +1,11 @@
1
- export class ObservedMap {
1
+ /**
2
+ * Decorator that wraps another map and lets you observe mutations
3
+ * @template K,V
4
+ */
5
+ export class ObservedMap<K, V> {
2
6
  /**
3
7
  * @template K,V
4
8
  * @constructor
5
- * @property {number} size
6
9
  */
7
10
  constructor(source?: Map<any, any>);
8
11
  on: {
@@ -13,7 +16,7 @@ export class ObservedMap {
13
16
  *
14
17
  * @type {Map<K, V>}
15
18
  */
16
- data: Map<K, V>;
19
+ data: Map<K_1, V_1>;
17
20
  /**
18
21
  *
19
22
  * @param {K} key
@@ -26,7 +29,7 @@ export class ObservedMap {
26
29
  * @param {V} value
27
30
  * @returns {ObservedMap}
28
31
  */
29
- set(key: K, value: V): ObservedMap;
32
+ set(key: K, value: V): ObservedMap<any, any>;
30
33
  /**
31
34
  *
32
35
  * @param {K} key
@@ -1 +1 @@
1
- {"version":3,"file":"ObservedMap.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/map/ObservedMap.js"],"names":[],"mappings":"AAEA;IACI;;;;OAIG;IACH,oCAWC;IAVG;;;MAGC;IAED;;;OAGG;IACH,gBAAkB;IAGtB;;;;OAIG;IACH,aAFa,IAAE,SAAS,CAIvB;IAED;;;;;OAKG;IACH,uBAFa,WAAW,CAOvB;IAED;;;;OAIG;IACH,gBAFa,OAAO,CAUnB;IAED;;;;OAIG;IACH,iDAEC;IAED;;;OAGG;IACH,mBAEC;CACJ;mBA1EkB,+BAA+B"}
1
+ {"version":3,"file":"ObservedMap.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/map/ObservedMap.js"],"names":[],"mappings":"AAEA;;;GAGG;AACH;IACI;;;OAGG;IACH,oCAWC;IAVG;;;MAGC;IAED;;;OAGG;IACH,oBAAkB;IAGtB;;;;OAIG;IACH,SAHW,CAAC,GACC,CAAC,GAAC,SAAS,CAIvB;IAED;;;;;OAKG;IACH,SAJW,CAAC,SACD,CAAC,yBAQX;IAED;;;;OAIG;IACH,YAHW,CAAC,GACC,OAAO,CAUnB;IAED;;;;OAIG;IACH,iDAEC;IAED;;;OAGG;IACH,mBAEC;CACJ;mBA7EkB,+BAA+B"}
@@ -1,10 +1,13 @@
1
1
  import Signal from "../../events/signal/Signal.js";
2
2
 
3
+ /**
4
+ * Decorator that wraps another map and lets you observe mutations
5
+ * @template K,V
6
+ */
3
7
  export class ObservedMap {
4
8
  /**
5
9
  * @template K,V
6
10
  * @constructor
7
- * @property {number} size
8
11
  */
9
12
  constructor(source = new Map()) {
10
13
  this.on = {
@@ -1 +1 @@
1
- {"version":3,"file":"Deque.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/queue/Deque.js"],"names":[],"mappings":"AAWA;;;GAGG;AACH;IACI;;OAEG;IACH,8BAmBC;IAbG;;;;;;OAMG;IACH,eAA6B;IAE7B,eAAe;IACf,eAAe;IAEf,iBAA4B;IAGhC;;;OAGG;IACH,oBAFW,OAAO,QAWjB;IAED;;;;;OAKG;IACH,4BAKC;IAED;;;;;OAKG;IACH,6BAGC;IAED,yBA8BC;IAED,mBAEC;IAED,cAeC;IAED;;OAEG;IACH,QAFa,MAAM,CAalB;IAED;;;;;OAKG;IACH,yBAwBC;IAED;;;;OAIG;IACH,UAHW,CAAC,GACC,OAAO,CAYnB;IAED;;;;;OAKG;IACH,mBAiBC;IAED;;;;OAIG;IACH,WAFa,OAAO,CAInB;IAED;;;OAGG;IACH,YAFW,CAAC,QAOX;IAED;;;OAGG;IACH,eAFa,CAAC,CAQb;IAED;;;OAGG;IACH,YAFa,CAAC,GAAC,SAAS,CAIvB;IAED;;;OAGG;IACH,WAFW,CAAC,QAOX;IAED;;;OAGG;IACH,cAFa,CAAC,CASb;IAGD;;;OAGG;IACH,WAFa,CAAC,CAKb;IAOL,gBAAoB;IACpB,uBAAoB;IACpB,eAAmB;IAEnB;;OAEG;IACH,sBAAmB;CAblB"}
1
+ {"version":3,"file":"Deque.d.ts","sourceRoot":"","sources":["../../../../../src/core/collection/queue/Deque.js"],"names":[],"mappings":"AAYA;;;GAGG;AACH;IACI;;;OAGG;IACH,uBAFW,MAAM,EAoChB;IA5BG;;;;;;OAMG;IACH,eAA6B;IAE7B;;;;OAIG;IACH,eAAe;IACf;;;;OAIG;IACH,eAAe;IAEf;;;;OAIG;IACH,iBAA4B;IAGhC;;;;OAIG;IACH,oBASC;IAED;;;;;OAKG;IACH,iCAMC;IAED;;;;;OAKG;IACH,qCAGC;IAED,2BAwCC;IAED;;;OAGG;IACH,WAFY,OAAO,CAIlB;IAED,cAeC;IAED;;OAEG;IACH,QAFa,MAAM,CAalB;IAED;;;;;OAKG;IACH,0BAqCC;IAED;;;;OAIG;IACH,UAHW,CAAC,GACC,OAAO,CAYnB;IAED;;;;;OAKG;IACH,mBAiBC;IAED;;;;OAIG;IACH,WAFa,OAAO,CAInB;IAED;;;OAGG;IACH,YAFW,CAAC,QAOX;IAED;;;OAGG;IACH,eAFa,CAAC,GAAC,SAAS,CAQvB;IAED;;;OAGG;IACH,YAFa,CAAC,GAAC,SAAS,CAIvB;IAED;;;OAGG;IACH,WAFW,CAAC,QAOX;IAED;;;OAGG;IACH,cAFa,CAAC,CASb;IAGD;;;OAGG;IACH,WAFa,CAAC,GAAC,SAAS,CAKvB;IAOL,gBAAoB;IACpB,uBAAoB;IACpB,eAAmB;IAEnB;;OAEG;IACH,sBAAmB;CAblB"}