@fncts/base 0.0.41 → 0.0.43

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 (310) hide show
  1. package/_cjs/collection/Iterable/api.cjs +5 -5
  2. package/_cjs/collection/Iterable/api.cjs.map +1 -1
  3. package/_cjs/collection/immutable/Conc/api.cjs +14 -7
  4. package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
  5. package/_cjs/collection/immutable/Conc/definition.cjs +80 -50
  6. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  7. package/_cjs/collection/immutable/HashMap/definition.cjs +13 -6
  8. package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
  9. package/_cjs/collection/immutable/HashMap/internal.cjs +18 -7
  10. package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
  11. package/_cjs/collection/immutable/HashSet/api.cjs +6 -7
  12. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  13. package/_cjs/collection/immutable/HashSet/definition.cjs +27 -10
  14. package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
  15. package/_cjs/collection/immutable/List/definition.cjs +25 -26
  16. package/_cjs/collection/immutable/List/definition.cjs.map +1 -1
  17. package/_cjs/collection/immutable/Queue/definition.cjs +2 -0
  18. package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
  19. package/_cjs/collection/immutable/RoseTree/definition.cjs +5 -4
  20. package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
  21. package/_cjs/collection/immutable/SortedMap/definition.cjs +4 -3
  22. package/_cjs/collection/immutable/SortedMap/definition.cjs.map +1 -1
  23. package/_cjs/collection/immutable/SortedMap/iterator.cjs +4 -1
  24. package/_cjs/collection/immutable/SortedMap/iterator.cjs.map +1 -1
  25. package/_cjs/collection/immutable/SortedMap/node.cjs +6 -0
  26. package/_cjs/collection/immutable/SortedMap/node.cjs.map +1 -1
  27. package/_cjs/collection/immutable/Vector/api.cjs +1 -0
  28. package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
  29. package/_cjs/collection/immutable/Vector/definition.cjs +25 -8
  30. package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
  31. package/_cjs/collection/immutable/Vector/internal.cjs +18 -4
  32. package/_cjs/collection/immutable/Vector/internal.cjs.map +1 -1
  33. package/_cjs/collection/mutable/ArrayDeque.cjs +3 -0
  34. package/_cjs/collection/mutable/ArrayDeque.cjs.map +1 -1
  35. package/_cjs/collection/mutable/HashMap.cjs +16 -3
  36. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  37. package/_cjs/collection/mutable/HashSet.cjs +15 -3
  38. package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
  39. package/_cjs/collection/mutable/ListBuffer.cjs +3 -5
  40. package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
  41. package/_cjs/collection/weak/IterableWeakMap.cjs +3 -3
  42. package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
  43. package/_cjs/collection/weak/IterableWeakSet.cjs +3 -3
  44. package/_cjs/collection/weak/IterableWeakSet.cjs.map +1 -1
  45. package/_cjs/control/Eval/api.cjs +2 -0
  46. package/_cjs/control/Eval/api.cjs.map +1 -1
  47. package/_cjs/control/Eval/constructors.cjs +1 -0
  48. package/_cjs/control/Eval/constructors.cjs.map +1 -1
  49. package/_cjs/control/Eval/definition.cjs +4 -5
  50. package/_cjs/control/Eval/definition.cjs.map +1 -1
  51. package/_cjs/control/LazyValue.cjs +1 -0
  52. package/_cjs/control/LazyValue.cjs.map +1 -1
  53. package/_cjs/control/Pure/definition.cjs +10 -14
  54. package/_cjs/control/Pure/definition.cjs.map +1 -1
  55. package/_cjs/control/Pure/runtime.cjs +5 -2
  56. package/_cjs/control/Pure/runtime.cjs.map +1 -1
  57. package/_cjs/data/Branded/definition.cjs +7 -0
  58. package/_cjs/data/Branded/definition.cjs.map +1 -1
  59. package/_cjs/data/CaseClass.cjs +5 -14
  60. package/_cjs/data/CaseClass.cjs.map +1 -1
  61. package/_cjs/data/Cause/api/fold.cjs +4 -7
  62. package/_cjs/data/Cause/api/fold.cjs.map +1 -1
  63. package/_cjs/data/Cause/api.cjs +72 -66
  64. package/_cjs/data/Cause/api.cjs.map +1 -1
  65. package/_cjs/data/Cause/definition.cjs +36 -24
  66. package/_cjs/data/Cause/definition.cjs.map +1 -1
  67. package/_cjs/data/Const/definition.cjs +3 -0
  68. package/_cjs/data/Const/definition.cjs.map +1 -1
  69. package/_cjs/data/Data.cjs +6 -19
  70. package/_cjs/data/Data.cjs.map +1 -1
  71. package/_cjs/data/Datum/api.cjs.map +1 -1
  72. package/_cjs/data/Datum/definition.cjs +14 -17
  73. package/_cjs/data/Datum/definition.cjs.map +1 -1
  74. package/_cjs/data/Duration/definition.cjs +3 -3
  75. package/_cjs/data/Duration/definition.cjs.map +1 -1
  76. package/_cjs/data/Either/definition.cjs +10 -10
  77. package/_cjs/data/Either/definition.cjs.map +1 -1
  78. package/_cjs/data/EitherT/api.cjs +1 -1
  79. package/_cjs/data/EitherT/api.cjs.map +1 -1
  80. package/_cjs/data/Environment/ServiceNotFoundError.cjs +1 -0
  81. package/_cjs/data/Environment/ServiceNotFoundError.cjs.map +1 -1
  82. package/_cjs/data/Environment/definition.cjs +4 -3
  83. package/_cjs/data/Environment/definition.cjs.map +1 -1
  84. package/_cjs/data/EnvironmentPatch.cjs +13 -13
  85. package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
  86. package/_cjs/data/Equatable/api.cjs +27 -3
  87. package/_cjs/data/Equatable/api.cjs.map +1 -1
  88. package/_cjs/data/Exit/definition.cjs +14 -11
  89. package/_cjs/data/Exit/definition.cjs.map +1 -1
  90. package/_cjs/data/FiberId/definition.cjs +13 -12
  91. package/_cjs/data/FiberId/definition.cjs.map +1 -1
  92. package/_cjs/data/Guard/definition.cjs +3 -4
  93. package/_cjs/data/Guard/definition.cjs.map +1 -1
  94. package/_cjs/data/Interval.cjs +2 -0
  95. package/_cjs/data/Interval.cjs.map +1 -1
  96. package/_cjs/data/Intervals.cjs +1 -0
  97. package/_cjs/data/Intervals.cjs.map +1 -1
  98. package/_cjs/data/Maybe/api.cjs +4 -4
  99. package/_cjs/data/Maybe/api.cjs.map +1 -1
  100. package/_cjs/data/Maybe/constructors.cjs +1 -3
  101. package/_cjs/data/Maybe/constructors.cjs.map +1 -1
  102. package/_cjs/data/Maybe/definition.cjs +15 -17
  103. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  104. package/_cjs/data/Showable/show.cjs +1 -1
  105. package/_cjs/data/Showable/show.cjs.map +1 -1
  106. package/_cjs/data/Tag/definition.cjs +7 -7
  107. package/_cjs/data/Tag/definition.cjs.map +1 -1
  108. package/_cjs/data/These/definition.cjs +12 -12
  109. package/_cjs/data/These/definition.cjs.map +1 -1
  110. package/_cjs/data/Trace/definition.cjs +2 -0
  111. package/_cjs/data/Trace/definition.cjs.map +1 -1
  112. package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs +1 -1
  113. package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs.map +1 -1
  114. package/_cjs/data/exceptions/IOError.cjs +2 -3
  115. package/_cjs/data/exceptions/IOError.cjs.map +1 -1
  116. package/_cjs/data/exceptions/IllegalArgumentError.cjs +2 -1
  117. package/_cjs/data/exceptions/IllegalArgumentError.cjs.map +1 -1
  118. package/_cjs/data/exceptions/IllegalStateError.cjs +1 -1
  119. package/_cjs/data/exceptions/IllegalStateError.cjs.map +1 -1
  120. package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs +1 -1
  121. package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs.map +1 -1
  122. package/_cjs/data/exceptions/InterruptedException.cjs +2 -3
  123. package/_cjs/data/exceptions/InterruptedException.cjs.map +1 -1
  124. package/_cjs/data/exceptions/InvalidCapacityError.cjs +1 -1
  125. package/_cjs/data/exceptions/InvalidCapacityError.cjs.map +1 -1
  126. package/_cjs/data/exceptions/NoSuchElementError.cjs +1 -1
  127. package/_cjs/data/exceptions/NoSuchElementError.cjs.map +1 -1
  128. package/_cjs/internal/AtomicReference.cjs +2 -0
  129. package/_cjs/internal/AtomicReference.cjs.map +1 -1
  130. package/_cjs/internal/Stack.cjs +1 -0
  131. package/_cjs/internal/Stack.cjs.map +1 -1
  132. package/_cjs/util/PCGRandom.cjs +2 -0
  133. package/_cjs/util/PCGRandom.cjs.map +1 -1
  134. package/_cjs/util/assert.cjs +1 -0
  135. package/_cjs/util/assert.cjs.map +1 -1
  136. package/_cjs/util/rand/Random.cjs +5 -4
  137. package/_cjs/util/rand/Random.cjs.map +1 -1
  138. package/_cjs/util/rand/generator/MersenneTwister.cjs +2 -0
  139. package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
  140. package/_mjs/collection/Iterable/api.mjs +5 -5
  141. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  142. package/_mjs/collection/immutable/Conc/api.mjs +14 -7
  143. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  144. package/_mjs/collection/immutable/Conc/definition.mjs +80 -50
  145. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  146. package/_mjs/collection/immutable/HashMap/definition.mjs +13 -6
  147. package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
  148. package/_mjs/collection/immutable/HashMap/internal.mjs +18 -7
  149. package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
  150. package/_mjs/collection/immutable/HashSet/api.mjs +6 -7
  151. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  152. package/_mjs/collection/immutable/HashSet/definition.mjs +27 -10
  153. package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
  154. package/_mjs/collection/immutable/List/definition.mjs +24 -24
  155. package/_mjs/collection/immutable/List/definition.mjs.map +1 -1
  156. package/_mjs/collection/immutable/Queue/definition.mjs +2 -0
  157. package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
  158. package/_mjs/collection/immutable/RoseTree/definition.mjs +5 -4
  159. package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
  160. package/_mjs/collection/immutable/SortedMap/definition.mjs +4 -3
  161. package/_mjs/collection/immutable/SortedMap/definition.mjs.map +1 -1
  162. package/_mjs/collection/immutable/SortedMap/iterator.mjs +4 -1
  163. package/_mjs/collection/immutable/SortedMap/iterator.mjs.map +1 -1
  164. package/_mjs/collection/immutable/SortedMap/node.mjs +6 -0
  165. package/_mjs/collection/immutable/SortedMap/node.mjs.map +1 -1
  166. package/_mjs/collection/immutable/Vector/api.mjs +1 -0
  167. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  168. package/_mjs/collection/immutable/Vector/definition.mjs +25 -8
  169. package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
  170. package/_mjs/collection/immutable/Vector/internal.mjs +18 -4
  171. package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
  172. package/_mjs/collection/mutable/ArrayDeque.mjs +3 -0
  173. package/_mjs/collection/mutable/ArrayDeque.mjs.map +1 -1
  174. package/_mjs/collection/mutable/HashMap.mjs +16 -3
  175. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  176. package/_mjs/collection/mutable/HashSet.mjs +15 -3
  177. package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
  178. package/_mjs/collection/mutable/ListBuffer.mjs +3 -5
  179. package/_mjs/collection/mutable/ListBuffer.mjs.map +1 -1
  180. package/_mjs/collection/weak/IterableWeakMap.mjs +3 -3
  181. package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
  182. package/_mjs/collection/weak/IterableWeakSet.mjs +3 -3
  183. package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
  184. package/_mjs/control/Eval/api.mjs +2 -0
  185. package/_mjs/control/Eval/api.mjs.map +1 -1
  186. package/_mjs/control/Eval/constructors.mjs +1 -0
  187. package/_mjs/control/Eval/constructors.mjs.map +1 -1
  188. package/_mjs/control/Eval/definition.mjs +4 -5
  189. package/_mjs/control/Eval/definition.mjs.map +1 -1
  190. package/_mjs/control/LazyValue.mjs +1 -0
  191. package/_mjs/control/LazyValue.mjs.map +1 -1
  192. package/_mjs/control/Pure/definition.mjs +8 -12
  193. package/_mjs/control/Pure/definition.mjs.map +1 -1
  194. package/_mjs/control/Pure/runtime.mjs +5 -2
  195. package/_mjs/control/Pure/runtime.mjs.map +1 -1
  196. package/_mjs/data/Branded/definition.mjs +6 -0
  197. package/_mjs/data/Branded/definition.mjs.map +1 -1
  198. package/_mjs/data/CaseClass.mjs +5 -14
  199. package/_mjs/data/CaseClass.mjs.map +1 -1
  200. package/_mjs/data/Cause/api/fold.mjs +4 -7
  201. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  202. package/_mjs/data/Cause/api.mjs +72 -66
  203. package/_mjs/data/Cause/api.mjs.map +1 -1
  204. package/_mjs/data/Cause/definition.mjs +36 -24
  205. package/_mjs/data/Cause/definition.mjs.map +1 -1
  206. package/_mjs/data/Const/definition.mjs +3 -0
  207. package/_mjs/data/Const/definition.mjs.map +1 -1
  208. package/_mjs/data/Data.mjs +6 -19
  209. package/_mjs/data/Data.mjs.map +1 -1
  210. package/_mjs/data/Datum/api.mjs.map +1 -1
  211. package/_mjs/data/Datum/definition.mjs +14 -17
  212. package/_mjs/data/Datum/definition.mjs.map +1 -1
  213. package/_mjs/data/Duration/definition.mjs +3 -3
  214. package/_mjs/data/Duration/definition.mjs.map +1 -1
  215. package/_mjs/data/Either/definition.mjs +10 -10
  216. package/_mjs/data/Either/definition.mjs.map +1 -1
  217. package/_mjs/data/EitherT/api.mjs +1 -1
  218. package/_mjs/data/EitherT/api.mjs.map +1 -1
  219. package/_mjs/data/Environment/ServiceNotFoundError.mjs +1 -0
  220. package/_mjs/data/Environment/ServiceNotFoundError.mjs.map +1 -1
  221. package/_mjs/data/Environment/definition.mjs +4 -3
  222. package/_mjs/data/Environment/definition.mjs.map +1 -1
  223. package/_mjs/data/EnvironmentPatch.mjs +13 -13
  224. package/_mjs/data/EnvironmentPatch.mjs.map +1 -1
  225. package/_mjs/data/Equatable/api.mjs +26 -2
  226. package/_mjs/data/Equatable/api.mjs.map +1 -1
  227. package/_mjs/data/Exit/definition.mjs +14 -11
  228. package/_mjs/data/Exit/definition.mjs.map +1 -1
  229. package/_mjs/data/FiberId/definition.mjs +13 -12
  230. package/_mjs/data/FiberId/definition.mjs.map +1 -1
  231. package/_mjs/data/Guard/definition.mjs +2 -3
  232. package/_mjs/data/Guard/definition.mjs.map +1 -1
  233. package/_mjs/data/Interval.mjs +2 -0
  234. package/_mjs/data/Interval.mjs.map +1 -1
  235. package/_mjs/data/Intervals.mjs +1 -0
  236. package/_mjs/data/Intervals.mjs.map +1 -1
  237. package/_mjs/data/Maybe/api.mjs +4 -4
  238. package/_mjs/data/Maybe/api.mjs.map +1 -1
  239. package/_mjs/data/Maybe/constructors.mjs +1 -3
  240. package/_mjs/data/Maybe/constructors.mjs.map +1 -1
  241. package/_mjs/data/Maybe/definition.mjs +14 -16
  242. package/_mjs/data/Maybe/definition.mjs.map +1 -1
  243. package/_mjs/data/Showable/show.mjs +1 -1
  244. package/_mjs/data/Showable/show.mjs.map +1 -1
  245. package/_mjs/data/Tag/definition.mjs +7 -7
  246. package/_mjs/data/Tag/definition.mjs.map +1 -1
  247. package/_mjs/data/These/definition.mjs +10 -10
  248. package/_mjs/data/These/definition.mjs.map +1 -1
  249. package/_mjs/data/Trace/definition.mjs +2 -0
  250. package/_mjs/data/Trace/definition.mjs.map +1 -1
  251. package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs +1 -1
  252. package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs.map +1 -1
  253. package/_mjs/data/exceptions/IOError.mjs +2 -3
  254. package/_mjs/data/exceptions/IOError.mjs.map +1 -1
  255. package/_mjs/data/exceptions/IllegalArgumentError.mjs +2 -1
  256. package/_mjs/data/exceptions/IllegalArgumentError.mjs.map +1 -1
  257. package/_mjs/data/exceptions/IllegalStateError.mjs +1 -1
  258. package/_mjs/data/exceptions/IllegalStateError.mjs.map +1 -1
  259. package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs +1 -1
  260. package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs.map +1 -1
  261. package/_mjs/data/exceptions/InterruptedException.mjs +2 -3
  262. package/_mjs/data/exceptions/InterruptedException.mjs.map +1 -1
  263. package/_mjs/data/exceptions/InvalidCapacityError.mjs +1 -1
  264. package/_mjs/data/exceptions/InvalidCapacityError.mjs.map +1 -1
  265. package/_mjs/data/exceptions/NoSuchElementError.mjs +1 -1
  266. package/_mjs/data/exceptions/NoSuchElementError.mjs.map +1 -1
  267. package/_mjs/internal/AtomicReference.mjs +2 -0
  268. package/_mjs/internal/AtomicReference.mjs.map +1 -1
  269. package/_mjs/internal/Stack.mjs +1 -0
  270. package/_mjs/internal/Stack.mjs.map +1 -1
  271. package/_mjs/util/PCGRandom.mjs +2 -0
  272. package/_mjs/util/PCGRandom.mjs.map +1 -1
  273. package/_mjs/util/assert.mjs +1 -0
  274. package/_mjs/util/assert.mjs.map +1 -1
  275. package/_mjs/util/rand/Random.mjs +5 -4
  276. package/_mjs/util/rand/Random.mjs.map +1 -1
  277. package/_mjs/util/rand/generator/MersenneTwister.mjs +2 -0
  278. package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
  279. package/_src/collection/Iterable/api.ts +0 -1
  280. package/_src/collection/immutable/Conc/definition.ts +12 -5
  281. package/_src/collection/immutable/HashMap/definition.ts +4 -1
  282. package/_src/collection/immutable/HashSet/api.ts +2 -3
  283. package/_src/collection/immutable/List/definition.ts +24 -2
  284. package/_src/collection/immutable/Vector/api.ts +4 -6
  285. package/_src/collection/immutable/Vector/definition.ts +14 -3
  286. package/_src/collection/immutable/Vector/internal.ts +14 -8
  287. package/_src/collection/weak/IterableWeakMap.ts +4 -4
  288. package/_src/collection/weak/IterableWeakSet.ts +4 -4
  289. package/_src/control/Eval/constructors.ts +1 -0
  290. package/_src/data/Branded/definition.ts +6 -1
  291. package/_src/data/CaseClass.ts +0 -1
  292. package/_src/data/Cause/api.ts +8 -16
  293. package/_src/data/Data.ts +0 -1
  294. package/_src/data/Datum/api.ts +0 -2
  295. package/_src/data/EitherT/api.ts +0 -1
  296. package/_src/data/Equatable/api.ts +29 -2
  297. package/_src/data/Maybe/api.ts +0 -1
  298. package/_src/data/Maybe/definition.ts +6 -4
  299. package/_src/data/Showable/show.ts +1 -1
  300. package/_src/util/PCGRandom.ts +1 -0
  301. package/collection/immutable/Conc/definition.d.ts +5 -5
  302. package/collection/immutable/List/definition.d.ts +12 -2
  303. package/collection/immutable/Vector/definition.d.ts +8 -3
  304. package/collection/weak/IterableWeakMap.d.ts +4 -4
  305. package/collection/weak/IterableWeakSet.d.ts +4 -4
  306. package/data/Branded/definition.d.ts +4 -1
  307. package/data/Equatable/api.d.ts +10 -0
  308. package/data/Equatable/fast-equals.d.ts +1 -1
  309. package/data/Maybe/definition.d.ts +4 -3
  310. package/package.json +3 -3
@@ -1,4 +1,3 @@
1
- var _a, _b;
2
1
  import * as tsplus_module_1 from "@fncts/base/data/Hashable/definition";
3
2
  import * as tsplus_module_2 from "@fncts/base/data/Hashable/hash";
4
3
  import * as tsplus_module_3 from "@fncts/base/data/Equatable/definition";
@@ -22,10 +21,8 @@ export const ConcTypeId = /*#__PURE__*/Symbol.for("fncts.Conc");
22
21
  * @tsplus companion fncts.ConcOps
23
22
  */
24
23
  export class Conc {
25
- constructor() {
26
- this[_a] = ConcTypeId;
27
- }
28
- get [(_a = ConcTypeId, tsplus_module_1.hashSymbol)]() {
24
+ [ConcTypeId] = ConcTypeId;
25
+ get [tsplus_module_1.hashSymbol]() {
29
26
  return tsplus_module_2.hashIterator(this[Symbol.iterator]());
30
27
  }
31
28
  [tsplus_module_3.equalsSymbol](that) {
@@ -33,16 +30,14 @@ export class Conc {
33
30
  }
34
31
  }
35
32
  class ConcImplementation {
36
- constructor() {
37
- this[_b] = ConcTypeId;
38
- this.depth = 0;
39
- }
40
- get [(_b = ConcTypeId, tsplus_module_1.hashSymbol)]() {
33
+ [ConcTypeId] = ConcTypeId;
34
+ get [tsplus_module_1.hashSymbol]() {
41
35
  return tsplus_module_2.hashIterator(this[Symbol.iterator]());
42
36
  }
43
37
  [tsplus_module_3.equalsSymbol](that) {
44
38
  return isConc_1(that) && corresponds_1(that, tsplus_module_4.strictEquals)(this);
45
39
  }
40
+ depth = 0;
46
41
  arrayIterator() {
47
42
  return this.materialize().arrayIterator();
48
43
  }
@@ -55,6 +50,7 @@ class ConcImplementation {
55
50
  forEach(startIndex, f) {
56
51
  this.materialize().forEach(startIndex, f);
57
52
  }
53
+ arrayLikeCache;
58
54
  arrayLike() {
59
55
  if (this.arrayLikeCache) {
60
56
  return this.arrayLikeCache;
@@ -64,6 +60,7 @@ class ConcImplementation {
64
60
  this.arrayLikeCache = arr;
65
61
  return arr;
66
62
  }
63
+ arrayCache;
67
64
  array() {
68
65
  if (this.arrayCache) {
69
66
  return this.arrayCache;
@@ -185,15 +182,12 @@ class ConcImplementation {
185
182
  }
186
183
  const alloc = typeof Buffer !== "undefined" ? Buffer.alloc : n => new Uint8Array(n);
187
184
  export class Empty extends ConcImplementation {
188
- constructor() {
189
- super(...arguments);
190
- this._tag = "Empty" /* ConcTag.Empty */;
191
- this.length = 0;
192
- this.depth = 0;
193
- this.left = this;
194
- this.right = this;
195
- this.binary = false;
196
- }
185
+ _tag = "Empty" /* ConcTag.Empty */;
186
+ length = 0;
187
+ depth = 0;
188
+ left = this;
189
+ right = this;
190
+ binary = false;
197
191
  get(index) {
198
192
  throw new tsplus_module_6.ArrayIndexOutOfBoundsError(`Conc.get access to ${index}`);
199
193
  }
@@ -232,11 +226,16 @@ export class Empty extends ConcImplementation {
232
226
  }
233
227
  export const _Empty = /*#__PURE__*/new Empty();
234
228
  export class Concat extends ConcImplementation {
229
+ left;
230
+ right;
231
+ _tag = "Concat" /* ConcTag.Concat */;
232
+ length;
233
+ depth;
234
+ binary;
235
235
  constructor(left, right) {
236
236
  super();
237
237
  this.left = left;
238
238
  this.right = right;
239
- this._tag = "Concat" /* ConcTag.Concat */;
240
239
  this.length = this.left.length + this.right.length;
241
240
  this.depth = 1 + Math.max(this.left.depth, this.right.depth);
242
241
  this.binary = this.left.binary && this.right.binary;
@@ -263,17 +262,23 @@ export class Concat extends ConcImplementation {
263
262
  }
264
263
  }
265
264
  class AppendN extends ConcImplementation {
265
+ start;
266
+ buffer;
267
+ bufferUsed;
268
+ binary;
269
+ _tag = "AppendN" /* ConcTag.AppendN */;
270
+ length;
271
+ depth;
272
+ left = _Empty;
273
+ right = _Empty;
266
274
  constructor(start, buffer, bufferUsed, binary) {
267
275
  super();
268
276
  this.start = start;
269
277
  this.buffer = buffer;
270
278
  this.bufferUsed = bufferUsed;
271
279
  this.binary = binary;
272
- this._tag = "AppendN" /* ConcTag.AppendN */;
273
- this.depth = this.start.depth + 1;
274
- this.left = _Empty;
275
- this.right = _Empty;
276
280
  this.length = this.start.length + this.bufferUsed;
281
+ this.depth = this.start.depth + 1;
277
282
  }
278
283
  [Symbol.iterator]() {
279
284
  return tsplus_module_7.concat(tsplus_module_7.take(this.bufferUsed)(tsplus_module_9.toIterable(this.buffer)))(tsplus_module_7.toIterable(this.start))[Symbol.iterator]();
@@ -317,15 +322,21 @@ class AppendN extends ConcImplementation {
317
322
  }
318
323
  }
319
324
  export class PrependN extends ConcImplementation {
325
+ end;
326
+ buffer;
327
+ bufferUsed;
328
+ binary;
329
+ _tag = "PrependN" /* ConcTag.PrependN */;
330
+ length;
331
+ depth;
332
+ left = _Empty;
333
+ right = _Empty;
320
334
  constructor(end, buffer, bufferUsed, binary) {
321
335
  super();
322
336
  this.end = end;
323
337
  this.buffer = buffer;
324
338
  this.bufferUsed = bufferUsed;
325
339
  this.binary = binary;
326
- this._tag = "PrependN" /* ConcTag.PrependN */;
327
- this.left = _Empty;
328
- this.right = _Empty;
329
340
  if (this.end.depth >= MAX_CONC_DEPTH) {
330
341
  this.end = this.end.materialize();
331
342
  }
@@ -371,6 +382,16 @@ export class PrependN extends ConcImplementation {
371
382
  }
372
383
  }
373
384
  class Update extends ConcImplementation {
385
+ conc;
386
+ bufferIndices;
387
+ bufferValues;
388
+ used;
389
+ binary;
390
+ _tag = "Update" /* ConcTag.Update */;
391
+ length;
392
+ depth;
393
+ left = _Empty;
394
+ right = _Empty;
374
395
  constructor(conc, bufferIndices, bufferValues, used, binary) {
375
396
  super();
376
397
  this.conc = conc;
@@ -378,9 +399,6 @@ class Update extends ConcImplementation {
378
399
  this.bufferValues = bufferValues;
379
400
  this.used = used;
380
401
  this.binary = binary;
381
- this._tag = "Update" /* ConcTag.Update */;
382
- this.left = _Empty;
383
- this.right = _Empty;
384
402
  if (this.conc.depth >= MAX_CONC_DEPTH) {
385
403
  this.conc = this.conc.materialize();
386
404
  }
@@ -434,15 +452,16 @@ class Update extends ConcImplementation {
434
452
  }
435
453
  }
436
454
  export class Singleton extends ConcImplementation {
455
+ value;
456
+ _tag = "Singleton" /* ConcTag.Singleton */;
457
+ length = 1;
458
+ depth = 0;
459
+ left = _Empty;
460
+ right = _Empty;
461
+ binary;
437
462
  constructor(value) {
438
463
  super();
439
464
  this.value = value;
440
- this._tag = "Singleton" /* ConcTag.Singleton */;
441
- this.length = 1;
442
- this.depth = 0;
443
- this.left = _Empty;
444
- this.right = _Empty;
445
- this.reverseArrayIterator = this.arrayIterator;
446
465
  this.binary = tsplus_module_5.isByte(this.value);
447
466
  }
448
467
  get(n) {
@@ -463,16 +482,23 @@ export class Singleton extends ConcImplementation {
463
482
  arrayIterator() {
464
483
  return tsplus_module_8.single([this.value])[Symbol.iterator]();
465
484
  }
485
+ reverseArrayIterator = this.arrayIterator;
466
486
  }
467
487
  export class Slice extends ConcImplementation {
488
+ conc;
489
+ offset;
490
+ l;
491
+ _tag = "Slice" /* ConcTag.Slice */;
492
+ length;
493
+ binary;
494
+ depth;
495
+ left = _Empty;
496
+ right = _Empty;
468
497
  constructor(conc, offset, l) {
469
498
  super();
470
499
  this.conc = conc;
471
500
  this.offset = offset;
472
501
  this.l = l;
473
- this._tag = "Slice" /* ConcTag.Slice */;
474
- this.left = _Empty;
475
- this.right = _Empty;
476
502
  if (this.conc.depth >= MAX_CONC_DEPTH) {
477
503
  this.conc = this.conc.materialize();
478
504
  }
@@ -501,15 +527,16 @@ export class Slice extends ConcImplementation {
501
527
  }
502
528
  }
503
529
  export class Chunk extends ConcImplementation {
530
+ _array;
531
+ _tag = "Chunk" /* ConcTag.Chunk */;
532
+ length;
533
+ depth = 0;
534
+ left = _Empty;
535
+ right = _Empty;
536
+ binary = false;
504
537
  constructor(_array) {
505
538
  super();
506
539
  this._array = _array;
507
- this._tag = "Chunk" /* ConcTag.Chunk */;
508
- this.depth = 0;
509
- this.left = _Empty;
510
- this.right = _Empty;
511
- this.binary = false;
512
- this.reverseArrayIterator = this.arrayIterator;
513
540
  this.length = this._array.length;
514
541
  }
515
542
  get(n) {
@@ -532,16 +559,19 @@ export class Chunk extends ConcImplementation {
532
559
  arrayIterator() {
533
560
  return tsplus_module_8.single(this._array)[Symbol.iterator]();
534
561
  }
562
+ reverseArrayIterator = this.arrayIterator;
535
563
  }
536
564
  export class ByteChunk extends ConcImplementation {
565
+ _array;
566
+ _tag = "ByteChunk" /* ConcTag.ByteChunk */;
567
+ length;
568
+ depth = 0;
569
+ left = _Empty;
570
+ right = _Empty;
571
+ binary = true;
537
572
  constructor(_array) {
538
573
  super();
539
574
  this._array = _array;
540
- this._tag = "ByteChunk" /* ConcTag.ByteChunk */;
541
- this.depth = 0;
542
- this.left = _Empty;
543
- this.right = _Empty;
544
- this.binary = true;
545
575
  this.length = this._array.length;
546
576
  }
547
577
  get(n) {
@@ -1 +1 @@
1
- {"version":3,"file":"definition.mjs","names":["fromArray","fromArray_1","isConc","isConc_1","corresponds","corresponds_1","toArray","toArray_1","MAX_CONC_DEPTH","BUFFER_SIZE","UPDATE_BUFFER_SIZE","ConcTypeId","Symbol","for","Conc","constructor","_a","tsplus_module_1","hashSymbol","tsplus_module_2","hashIterator","iterator","tsplus_module_3","equalsSymbol","that","tsplus_module_4","strictEquals","ConcImplementation","_b","depth","arrayIterator","materialize","reverseArrayIterator","forEach","startIndex","f","arrayLike","arrayLikeCache","arr","binary","alloc","length","Array","copyToArray","array","arrayCache","concat","_tag","conc","buffer","take","bufferUsed","start","slice","end","diff","Math","abs","Concat","left","right","nr","nrr","nl","nll","n","_Empty","l","Slice","offset","append","a","tsplus_module_5","isByte","AppendN","prepend","PrependN","update","index","a1","tsplus_module_6","IndexOutOfBoundsError","bufferIndices","bufferValues","Update","Buffer","Uint8Array","Empty","get","ArrayIndexOutOfBoundsError","_","__","next","value","done","undefined","max","dest","tsplus_module_7","toIterable","tsplus_module_8","makeIterable","tsplus_module_9","i","copyArray","subarray","min","j","used","Singleton","single","Chunk","_array","ByteChunk","concrete","source","sourcePos","destPos","from","u","isObject","bs","self","leftIterator","rightIterator","leftLength","rightLength","equal","leftNext","rightNext","b"],"sources":["../../../../_src/collection/immutable/Conc/definition.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"definition.mjs","names":["fromArray","fromArray_1","isConc","isConc_1","corresponds","corresponds_1","toArray","toArray_1","MAX_CONC_DEPTH","BUFFER_SIZE","UPDATE_BUFFER_SIZE","ConcTypeId","Symbol","for","Conc","tsplus_module_1","hashSymbol","tsplus_module_2","hashIterator","iterator","tsplus_module_3","equalsSymbol","that","tsplus_module_4","strictEquals","ConcImplementation","depth","arrayIterator","materialize","reverseArrayIterator","forEach","startIndex","f","arrayLikeCache","arrayLike","arr","binary","alloc","length","Array","copyToArray","arrayCache","array","concat","_tag","conc","buffer","take","bufferUsed","start","slice","end","diff","Math","abs","Concat","left","right","nr","nrr","nl","nll","n","_Empty","l","Slice","offset","append","a","tsplus_module_5","isByte","AppendN","prepend","PrependN","update","index","a1","tsplus_module_6","IndexOutOfBoundsError","bufferIndices","bufferValues","Update","Buffer","Uint8Array","Empty","get","ArrayIndexOutOfBoundsError","_","__","next","value","done","undefined","constructor","max","dest","tsplus_module_7","toIterable","tsplus_module_8","makeIterable","tsplus_module_9","i","copyArray","subarray","min","j","used","Singleton","single","Chunk","_array","ByteChunk","concrete","source","sourcePos","destPos","from","u","isObject","bs","self","leftIterator","rightIterator","leftLength","rightLength","equal","leftNext","rightNext","b"],"sources":["../../../../_src/collection/immutable/Conc/definition.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- var _a;
2
1
  const fileName_1 = "(@fncts/base) src/collection/immutable/HashMap/definition.ts";
3
2
  import * as tsplus_module_1 from "@fncts/base/data/Hashable/definition";
4
3
  import * as tsplus_module_2 from "@fncts/base/data/Hashable/hash";
@@ -18,28 +17,36 @@ export const HashMapTypeId = /*#__PURE__*/Symbol.for("fncts.HashMap");
18
17
  * @tsplus companion fncts.HashMapOps
19
18
  */
20
19
  export class HashMap {
20
+ editable;
21
+ edit;
22
+ config;
23
+ root;
24
+ size;
25
+ [HashMapTypeId] = HashMapTypeId;
21
26
  constructor(editable, edit, config, root, size) {
22
27
  this.editable = editable;
23
28
  this.edit = edit;
24
29
  this.config = config;
25
30
  this.root = root;
26
31
  this.size = size;
27
- this[_a] = HashMapTypeId;
28
32
  }
29
- [(_a = HashMapTypeId, Symbol.iterator)]() {
33
+ [Symbol.iterator]() {
30
34
  return new HashMapIterator(this, identity);
31
35
  }
32
36
  get [tsplus_module_1.hashSymbol]() {
33
37
  return tsplus_module_2.hashIterator(new HashMapIterator(this, ([k, v]) => tsplus_module_2.combineHash(tsplus_module_2.hashUnknown(k), tsplus_module_2.hashUnknown(v))));
34
38
  }
35
39
  [tsplus_module_3.equalsSymbol](other) {
36
- return isHashMap_1(other) && other.size === this.size && tsplus_module_5.corresponds(other, tsplus_module_4.strictEquals)(this);
40
+ return isHashMap_1(other) && other.size === this.size && tsplus_module_5.corresponds(other, ([ka, va], [kb, vb]) => tsplus_module_4.strictEquals(ka, kb) && tsplus_module_4.strictEquals(va, vb))(this);
37
41
  }
38
42
  }
39
43
  function isHashMap_1(u) {
40
44
  return tsplus_module_6.isObject(u) && HashMapTypeId in u;
41
45
  }
42
46
  export class HashMapIterator {
47
+ map;
48
+ f;
49
+ v;
43
50
  constructor(map, f) {
44
51
  this.map = map;
45
52
  this.f = f;
@@ -65,7 +72,7 @@ export class HashMapIterator {
65
72
  }
66
73
  }
67
74
  function applyCont(cont) {
68
- return cont ? visitLazyChildren(cont[0], cont[1], cont[2], cont[3], cont[4]) : tsplus_module_8.nothing(fileName_1 + ":100:89");
75
+ return cont ? visitLazyChildren(cont[0], cont[1], cont[2], cont[3], cont[4]) : tsplus_module_8.nothing(fileName_1 + ":103:89");
69
76
  }
70
77
  function visitLazyChildren(len, children, i, f, cont) {
71
78
  while (i < len) {
@@ -86,7 +93,7 @@ function visitLazy(node, f, cont = undefined) {
86
93
  return tsplus_module_7.isJust(node.value) ? tsplus_module_8.just({
87
94
  value: f(tuple(node.key, node.value.value)),
88
95
  cont
89
- }, fileName_1 + ":135:15") : applyCont(cont);
96
+ }, fileName_1 + ":138:15") : applyCont(cont);
90
97
  }
91
98
  case "CollisionNode":
92
99
  case "ArrayNode":
@@ -1 +1 @@
1
- {"version":3,"file":"definition.mjs","names":["isHashMap","isHashMap_1","isEmptyNode","identity","tuple","HashMapVariance","Symbol","for","HashMapTypeId","HashMap","constructor","editable","edit","config","root","size","_a","iterator","HashMapIterator","tsplus_module_1","hashSymbol","tsplus_module_2","hashIterator","k","v","combineHash","hashUnknown","tsplus_module_3","equalsSymbol","other","tsplus_module_5","corresponds","tsplus_module_4","strictEquals","u","tsplus_module_6","isObject","map","f","visitLazy","undefined","next","tsplus_module_7","isNothing","done","value","v0","applyCont","cont","visitLazyChildren","tsplus_module_8","nothing","fileName_1","len","children","i","child","node","_tag","isJust","just","key","length"],"sources":["../../../../_src/collection/immutable/HashMap/definition.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"definition.mjs","names":["isHashMap","isHashMap_1","isEmptyNode","identity","tuple","HashMapVariance","Symbol","for","HashMapTypeId","HashMap","editable","edit","config","root","size","constructor","iterator","HashMapIterator","tsplus_module_1","hashSymbol","tsplus_module_2","hashIterator","k","v","combineHash","hashUnknown","tsplus_module_3","equalsSymbol","other","tsplus_module_5","corresponds","ka","va","kb","vb","tsplus_module_4","strictEquals","u","tsplus_module_6","isObject","map","f","visitLazy","undefined","next","tsplus_module_7","isNothing","done","value","v0","applyCont","cont","visitLazyChildren","tsplus_module_8","nothing","fileName_1","len","children","i","child","node","_tag","isJust","just","key","length"],"sources":["../../../../_src/collection/immutable/HashMap/definition.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -81,9 +81,7 @@ export function fromBitmap(bitmap, bit) {
81
81
  return popcount(bitmap & bit - 1);
82
82
  }
83
83
  export class EmptyNode {
84
- constructor() {
85
- this._tag = "EmptyNode";
86
- }
84
+ _tag = "EmptyNode";
87
85
  modify(edit, keyEq, shift, f, hash, key, size) {
88
86
  const v = f(tsplus_module_1.nothing(fileName_1 + ":109:24"));
89
87
  if (tsplus_module_2.isNothing(v)) return _EmptyNode;
@@ -102,12 +100,16 @@ export function canEditNode(edit, node) {
102
100
  return isEmptyNode(node) ? false : edit === node.edit;
103
101
  }
104
102
  export class LeafNode {
103
+ edit;
104
+ hash;
105
+ key;
106
+ value;
107
+ _tag = "LeafNode";
105
108
  constructor(edit, hash, key, value) {
106
109
  this.edit = edit;
107
110
  this.hash = hash;
108
111
  this.key = key;
109
112
  this.value = value;
110
- this._tag = "LeafNode";
111
113
  }
112
114
  modify(edit, keyEq, shift, f, hash, key, size) {
113
115
  if (keyEq(key)(this.key)) {
@@ -131,11 +133,14 @@ export class LeafNode {
131
133
  }
132
134
  }
133
135
  export class CollisionNode {
136
+ edit;
137
+ hash;
138
+ children;
139
+ _tag = "CollisionNode";
134
140
  constructor(edit, hash, children) {
135
141
  this.edit = edit;
136
142
  this.hash = hash;
137
143
  this.children = children;
138
- this._tag = "CollisionNode";
139
144
  }
140
145
  modify(edit, keyEq, shift, f, hash, key, size) {
141
146
  if (hash === this.hash) {
@@ -171,11 +176,14 @@ function updateCollisionList(mutate, edit, keyEq, hash, list, f, key, size) {
171
176
  return arrayUpdate(mutate, len, new LeafNode(edit, hash, key, newValue), list);
172
177
  }
173
178
  export class IndexedNode {
179
+ edit;
180
+ mask;
181
+ children;
182
+ _tag = "IndexedNode";
174
183
  constructor(edit, mask, children) {
175
184
  this.edit = edit;
176
185
  this.mask = mask;
177
186
  this.children = children;
178
- this._tag = "IndexedNode";
179
187
  }
180
188
  modify(edit, keyEq, shift, f, hash, key, size) {
181
189
  const mask = this.mask;
@@ -214,11 +222,14 @@ export class IndexedNode {
214
222
  }
215
223
  }
216
224
  export class ArrayNode {
225
+ edit;
226
+ size;
227
+ children;
228
+ _tag = "ArrayNode";
217
229
  constructor(edit, size, children) {
218
230
  this.edit = edit;
219
231
  this.size = size;
220
232
  this.children = children;
221
- this._tag = "ArrayNode";
222
233
  }
223
234
  modify(edit, keyEq, shift, f, hash, key, size) {
224
235
  let count = this.size;
@@ -1 +1 @@
1
- {"version":3,"file":"internal.mjs","names":["SIZE","BUCKET_SIZE","Math","pow","MASK","MAX_INDEX_NODE","MIN_ARRAY_NODE","arrayUpdate","mutate","at","v","arr","out","len","length","Array","i","arraySpliceOut","newLen","g","arraySpliceIn","popcount","x","hashFragment","shift","h","toBitmap","fromBitmap","bitmap","bit","EmptyNode","constructor","_tag","modify","edit","keyEq","f","hash","key","size","tsplus_module_1","nothing","fileName_1","tsplus_module_2","isNothing","_EmptyNode","value","LeafNode","isEmptyNode","a","isLeaf","node","canEditNode","mergeLeaves","CollisionNode","children","canEdit","list","updateCollisionList","child","newValue","IndexedNode","mask","frag","indx","exists","current","newChildren","expand","ArrayNode","count","newChild","pack","removed","elements","elem","subNodes","h1","n1","h2","n2","subH1","subH2"],"sources":["../../../../_src/collection/immutable/HashMap/internal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"internal.mjs","names":["SIZE","BUCKET_SIZE","Math","pow","MASK","MAX_INDEX_NODE","MIN_ARRAY_NODE","arrayUpdate","mutate","at","v","arr","out","len","length","Array","i","arraySpliceOut","newLen","g","arraySpliceIn","popcount","x","hashFragment","shift","h","toBitmap","fromBitmap","bitmap","bit","EmptyNode","_tag","modify","edit","keyEq","f","hash","key","size","tsplus_module_1","nothing","fileName_1","tsplus_module_2","isNothing","_EmptyNode","value","LeafNode","isEmptyNode","a","isLeaf","node","canEditNode","constructor","mergeLeaves","CollisionNode","children","canEdit","list","updateCollisionList","child","newValue","IndexedNode","mask","frag","indx","exists","current","newChildren","expand","ArrayNode","count","newChild","pack","removed","elements","elem","subNodes","h1","n1","h2","n2","subH1","subH2"],"sources":["../../../../_src/collection/immutable/HashMap/internal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}