@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 +1 @@
1
- {"version":3,"file":"AtomicReference.mjs","names":["AtomicReference","constructor","initial","current","get","set","value","compareAndSet","old","getAndSet","previous"],"sources":["../../_src/internal/AtomicReference.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAM,MAAOA,eAAe;EAE1BC,YAAqBC,OAAU;IAAV,KAAAA,OAAO,GAAPA,OAAO;IAC1B,IAAI,CAACC,OAAO,GAAGD,OAAO;EACxB;EACA,IAAIE,GAAGA,CAAA;IACL,OAAO,IAAI,CAACD,OAAO;EACrB;EACAE,GAAGA,CAACC,KAAQ;IACV,IAAI,CAACH,OAAO,GAAGG,KAAK;EACtB;EACAC,aAAaA,CAACC,GAAM,EAAEF,KAAQ;IAC5B,IAAI,IAAI,CAACF,GAAG,KAAKI,GAAG,EAAE;MACpB,IAAI,CAACH,GAAG,CAACC,KAAK,CAAC;MACf,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EACAG,SAASA,CAACH,KAAQ;IAChB,MAAMI,QAAQ,GAAG,IAAI,CAACP,OAAO;IAC7B,IAAI,CAACA,OAAO,GAAKG,KAAK;IACtB,OAAOI,QAAQ;EACjB","ignoreList":[]}
1
+ {"version":3,"file":"AtomicReference.mjs","names":["AtomicReference","initial","current","constructor","get","set","value","compareAndSet","old","getAndSet","previous"],"sources":["../../_src/internal/AtomicReference.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAM,MAAOA,eAAe;EAELC,OAAA;EADbC,OAAO;EACfC,YAAqBF,OAAU;IAAV,KAAAA,OAAO,GAAPA,OAAO;IAC1B,IAAI,CAACC,OAAO,GAAGD,OAAO;EACxB;EACA,IAAIG,GAAGA,CAAA;IACL,OAAO,IAAI,CAACF,OAAO;EACrB;EACAG,GAAGA,CAACC,KAAQ;IACV,IAAI,CAACJ,OAAO,GAAGI,KAAK;EACtB;EACAC,aAAaA,CAACC,GAAM,EAAEF,KAAQ;IAC5B,IAAI,IAAI,CAACF,GAAG,KAAKI,GAAG,EAAE;MACpB,IAAI,CAACH,GAAG,CAACC,KAAK,CAAC;MACf,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EACAG,SAASA,CAACH,KAAQ;IAChB,MAAMI,QAAQ,GAAG,IAAI,CAACR,OAAO;IAC7B,IAAI,CAACA,OAAO,GAAKI,KAAK;IACtB,OAAOI,QAAQ;EACjB","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  * @tsplus companion fncts.StackOps
4
4
  */
5
5
  export class Stack {
6
+ node;
6
7
  constructor(node) {
7
8
  this.node = node;
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Stack.mjs","names":["Stack","constructor","node","clone","hasNext","isEmpty","size","peek","value","pop","previous","push","makeStack","single"],"sources":["../../_src/internal/Stack.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAIA,OAAM,MAAOA,KAAK;EAChBC,YAAoBC,IAAc;IAAd,KAAAA,IAAI,GAAJA,IAAI;EAAa;EACrCC,KAAKA,CAAA;IACH,OAAO,IAAIH,KAAK,CAAC,IAAI,CAACE,IAAI,CAAC;EAC7B;EACA,IAAIE,OAAOA,CAAA;IACT,OAAO,CAAC,CAAC,IAAI,CAACF,IAAI;EACpB;EACA,IAAIG,OAAOA,CAAA;IACT,OAAO,CAAC,IAAI,CAACD,OAAO;EACtB;EACA,IAAIE,IAAIA,CAAA;IACN,OAAO,IAAI,CAACJ,IAAI,EAAEI,IAAI,IAAI,CAAC;EAC7B;EACAC,IAAIA,CAAA;IACF,IAAI,IAAI,CAACL,IAAI,EAAE;MACb,OAAO,IAAI,CAACA,IAAI,CAACM,KAAK;IACxB;EACF;EACAC,GAAGA,CAAA;IACD,IAAI,IAAI,CAACP,IAAI,EAAE;MACb,MAAMM,KAAK,GAAG,IAAI,CAACN,IAAI,CAACM,KAAK;MAC7B,IAAI,CAACN,IAAI,GAAK,IAAI,CAACA,IAAI,CAACQ,QAAQ;MAChC,OAAOF,KAAK;IACd;EACF;EACAG,IAAIA,CAACH,KAAQ;IACX,IAAI,CAACN,IAAI,GAAG;MAAEM,KAAK;MAAEE,QAAQ,EAAE,IAAI,CAACR,IAAI;MAAEI,IAAI,EAAE,CAAC,IAAI,CAACJ,IAAI,EAAEI,IAAI,IAAI,CAAC,IAAI;IAAC,CAAE;EAC9E;;AASF;;;AAGA,OAAM,SAAUM,SAASA,CAAA;EACvB,OAAO,IAAIZ,KAAK,EAAE;AACpB;AAEA;;;AAGA,OAAM,SAAUa,MAAMA,CAAIL,KAAQ;EAChC,OAAO,IAAIR,KAAK,CAAC;IAAEQ,KAAK;IAAEF,IAAI,EAAE;EAAC,CAAE,CAAC;AACtC","ignoreList":[]}
1
+ {"version":3,"file":"Stack.mjs","names":["Stack","node","constructor","clone","hasNext","isEmpty","size","peek","value","pop","previous","push","makeStack","single"],"sources":["../../_src/internal/Stack.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAIA,OAAM,MAAOA,KAAK;EACIC,IAAA;EAApBC,YAAoBD,IAAc;IAAd,KAAAA,IAAI,GAAJA,IAAI;EAAa;EACrCE,KAAKA,CAAA;IACH,OAAO,IAAIH,KAAK,CAAC,IAAI,CAACC,IAAI,CAAC;EAC7B;EACA,IAAIG,OAAOA,CAAA;IACT,OAAO,CAAC,CAAC,IAAI,CAACH,IAAI;EACpB;EACA,IAAII,OAAOA,CAAA;IACT,OAAO,CAAC,IAAI,CAACD,OAAO;EACtB;EACA,IAAIE,IAAIA,CAAA;IACN,OAAO,IAAI,CAACL,IAAI,EAAEK,IAAI,IAAI,CAAC;EAC7B;EACAC,IAAIA,CAAA;IACF,IAAI,IAAI,CAACN,IAAI,EAAE;MACb,OAAO,IAAI,CAACA,IAAI,CAACO,KAAK;IACxB;EACF;EACAC,GAAGA,CAAA;IACD,IAAI,IAAI,CAACR,IAAI,EAAE;MACb,MAAMO,KAAK,GAAG,IAAI,CAACP,IAAI,CAACO,KAAK;MAC7B,IAAI,CAACP,IAAI,GAAK,IAAI,CAACA,IAAI,CAACS,QAAQ;MAChC,OAAOF,KAAK;IACd;EACF;EACAG,IAAIA,CAACH,KAAQ;IACX,IAAI,CAACP,IAAI,GAAG;MAAEO,KAAK;MAAEE,QAAQ,EAAE,IAAI,CAACT,IAAI;MAAEK,IAAI,EAAE,CAAC,IAAI,CAACL,IAAI,EAAEK,IAAI,IAAI,CAAC,IAAI;IAAC,CAAE;EAC9E;;AASF;;;AAGA,OAAM,SAAUM,SAASA,CAAA;EACvB,OAAO,IAAIZ,KAAK,EAAE;AACpB;AAEA;;;AAGA,OAAM,SAAUa,MAAMA,CAAIL,KAAQ;EAChC,OAAO,IAAIR,KAAK,CAAC;IAAEQ,KAAK;IAAEF,IAAI,EAAE;EAAC,CAAE,CAAC;AACtC","ignoreList":[]}
@@ -22,6 +22,7 @@ const BIT_27 = 134217728.0;
22
22
  * many general-purpose RNGs, they are also hard to predict.
23
23
  */
24
24
  export class PCGRandom {
25
+ _state;
25
26
  constructor(seedHi, seedLo, incHi, incLo) {
26
27
  if (isNothing(seedLo) && isNothing(seedHi)) {
27
28
  seedLo = Math.random() * 0xffffffff >>> 0;
@@ -88,6 +89,7 @@ export class PCGRandom {
88
89
  if ((max & max - 1) === 0) {
89
90
  return this._next() & max - 1; // fast path for power of 2
90
91
  }
92
+ // eslint-disable-next-line no-useless-assignment
91
93
  let num = 0;
92
94
  const skew = (-max >>> 0) % max >>> 0;
93
95
  for (num = this._next(); num < skew; num = this._next()) {
@@ -1 +1 @@
1
- {"version":3,"file":"PCGRandom.mjs","names":["isNothing","value","defaultIncHi","defaultIncLo","MUL_HI","MUL_LO","BIT_53","BIT_27","PCGRandom","constructor","seedHi","seedLo","incHi","incLo","Math","random","_state","Int32Array","_next","add64","getState","setState","state","oldHi","oldLo","mul64","xsHi","xsLo","xorshifted","rot","rot2","integer","max","num","skew","number","hi","lo","out","aHi","aLo","bHi","bLo","c1","c0","imul"],"sources":["../../_src/util/PCGRandom.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PCGRandom.mjs","names":["isNothing","value","defaultIncHi","defaultIncLo","MUL_HI","MUL_LO","BIT_53","BIT_27","PCGRandom","_state","constructor","seedHi","seedLo","incHi","incLo","Math","random","Int32Array","_next","add64","getState","setState","state","oldHi","oldLo","mul64","xsHi","xsLo","xorshifted","rot","rot2","integer","max","num","skew","number","hi","lo","out","aHi","aLo","bHi","bLo","c1","c0","imul"],"sources":["../../_src/util/PCGRandom.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  export class AssertionError extends Error {
2
+ message;
2
3
  constructor(message) {
3
4
  super(`Assertion Failed: ${message}`);
4
5
  this.message = message;
@@ -1 +1 @@
1
- {"version":3,"file":"assert.mjs","names":["AssertionError","Error","constructor","message","assert","assertion"],"sources":["../../_src/util/assert.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAM,MAAOA,cAAe,SAAQC,KAAK;EACvCC,YAAqBC,OAAe;IAClC,KAAK,CAAC,qBAAqBA,OAAO,EAAE,CAAC;IADlB,KAAAA,OAAO,GAAPA,OAAO;EAE5B;;AAEF,OAAM,SAAUC,MAAMA,CAACC,SAAkB,EAAEF,OAAgB;EACzD,IAAI,CAACE,SAAS,EAAE;IACd,MAAM,IAAIL,cAAc,CAACG,OAAO,IAAI,EAAE,CAAC;EACzC;AACF","ignoreList":[]}
1
+ {"version":3,"file":"assert.mjs","names":["AssertionError","Error","message","constructor","assert","assertion"],"sources":["../../_src/util/assert.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAM,MAAOA,cAAe,SAAQC,KAAK;EAClBC,OAAA;EAArBC,YAAqBD,OAAe;IAClC,KAAK,CAAC,qBAAqBA,OAAO,EAAE,CAAC;IADlB,KAAAA,OAAO,GAAPA,OAAO;EAE5B;;AAEF,OAAM,SAAUE,MAAMA,CAACC,SAAkB,EAAEH,OAAgB;EACzD,IAAI,CAACG,SAAS,EAAE;IACd,MAAM,IAAIL,cAAc,CAACE,OAAO,IAAI,EAAE,CAAC;EACzC;AACF","ignoreList":[]}
@@ -8,6 +8,11 @@ import { uniformIntDistribution } from "@fncts/base/util/rand/distribution/Unifo
8
8
  * @public
9
9
  */
10
10
  export class MutableRandom {
11
+ internalRng;
12
+ static MIN_INT = 0x80000000 | 0;
13
+ static MAX_INT = 0x7fffffff | 0;
14
+ static DBL_FACTOR = /*#__PURE__*/Math.pow(2, 27);
15
+ static DBL_DIVISOR = /*#__PURE__*/Math.pow(2, -53);
11
16
  /**
12
17
  * Create a mutable random number generator
13
18
  * @param internalRng - Immutable random generator from pure-rand library
@@ -68,8 +73,4 @@ export class MutableRandom {
68
73
  this.internalRng.setSeed(seed);
69
74
  }
70
75
  }
71
- MutableRandom.MIN_INT = 0x80000000 | 0;
72
- MutableRandom.MAX_INT = 0x7fffffff | 0;
73
- MutableRandom.DBL_FACTOR = /*#__PURE__*/Math.pow(2, 27);
74
- MutableRandom.DBL_DIVISOR = /*#__PURE__*/Math.pow(2, -53);
75
76
  //# sourceMappingURL=Random.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Random.mjs","names":["uniformArrayIntDistribution","uniformBigIntDistribution","uniformIntDistribution","MutableRandom","constructor","internalRng","clone","uniformIn","rangeMin","rangeMax","next","bits","nextBoolean","nextInt","min","max","MIN_INT","MAX_INT","nextBigInt","nextArrayInt","nextDouble","a","b","DBL_FACTOR","DBL_DIVISOR","setSeed","seed","Math","pow"],"sources":["../../../_src/util/rand/Random.ts"],"sourcesContent":[null],"mappings":"AAEA,SAASA,2BAA2B,QAAQ,gEAAgE;AAC5G,SAASC,yBAAyB,QAAQ,8DAA8D;AACxG,SAASC,sBAAsB,QAAQ,2DAA2D;AAClG;;;;;;AAMA,OAAM,MAAOC,aAAa;EAKxB;;;;EAIAC,YAAoBC,WAA4B;IAA5B,KAAAA,WAAW,GAAXA,WAAW;EAAoB;EACnD;;;EAGAC,KAAKA,CAAA;IACH,OAAO,IAAIH,aAAa,CAAC,IAAI,CAACE,WAAW,CAAC;EAC5C;EACQE,SAASA,CAACC,QAAgB,EAAEC,QAAgB;IAClD,OAAOP,sBAAsB,CAACM,QAAQ,EAAEC,QAAQ,EAAE,IAAI,CAACJ,WAAW,CAAC;EACrE;EACA;;;;EAIAK,IAAIA,CAACC,IAAY;IACf,OAAO,IAAI,CAACJ,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAII,IAAI,IAAI,CAAC,CAAC;EAC3C;EACA;;;EAGAC,WAAWA,CAAA;IACT,OAAO,IAAI,CAACL,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC;EACnC;EAWAM,OAAOA,CAACC,GAAY,EAAEC,GAAY;IAChC,OAAO,IAAI,CAACR,SAAS,CAACO,GAAG,IAAI,IAAI,GAAGX,aAAa,CAACa,OAAO,GAAGF,GAAG,EAAEC,GAAG,IAAI,IAAI,GAAGZ,aAAa,CAACc,OAAO,GAAGF,GAAG,CAAC;EAC7G;EACA;;;;;EAKAG,UAAUA,CAACJ,GAAW,EAAEC,GAAW;IACjC,OAAOd,yBAAyB,CAACa,GAAG,EAAEC,GAAG,EAAE,IAAI,CAACV,WAAW,CAAC;EAC9D;EACA;;;;;EAKAc,YAAYA,CACVL,GAGC,EACDC,GAGC;IAKD,OAAOf,2BAA2B,CAACc,GAAG,EAAEC,GAAG,EAAE,IAAI,CAACV,WAAW,CAAC;EAChE;EACA;;;EAGAe,UAAUA,CAAA;IACR,MAAMC,CAAC,GAAG,IAAI,CAACX,IAAI,CAAC,EAAE,CAAC;IACvB,MAAMY,CAAC,GAAG,IAAI,CAACZ,IAAI,CAAC,EAAE,CAAC;IACvB,OAAO,CAACW,CAAC,GAAGlB,aAAa,CAACoB,UAAU,GAAGD,CAAC,IAAInB,aAAa,CAACqB,WAAW;EACvE;EACAC,OAAOA,CAACC,IAAY;IAClB,IAAI,CAACrB,WAAW,CAACoB,OAAO,CAACC,IAAI,CAAC;EAChC;;AAlFevB,aAAA,CAAAa,OAAO,GAAe,UAAU,GAAG,CAAC;AACpCb,aAAA,CAAAc,OAAO,GAAe,UAAU,GAAG,CAAC;AACpCd,aAAA,CAAAoB,UAAU,gBAAYI,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;AACrCzB,aAAA,CAAAqB,WAAW,gBAAWG,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Random.mjs","names":["uniformArrayIntDistribution","uniformBigIntDistribution","uniformIntDistribution","MutableRandom","internalRng","MIN_INT","MAX_INT","DBL_FACTOR","Math","pow","DBL_DIVISOR","constructor","clone","uniformIn","rangeMin","rangeMax","next","bits","nextBoolean","nextInt","min","max","nextBigInt","nextArrayInt","nextDouble","a","b","setSeed","seed"],"sources":["../../../_src/util/rand/Random.ts"],"sourcesContent":[null],"mappings":"AAEA,SAASA,2BAA2B,QAAQ,gEAAgE;AAC5G,SAASC,yBAAyB,QAAQ,8DAA8D;AACxG,SAASC,sBAAsB,QAAQ,2DAA2D;AAClG;;;;;;AAMA,OAAM,MAAOC,aAAa;EASJC,WAAA;EARZ,OAAOC,OAAO,GAAe,UAAU,GAAG,CAAC;EAC3C,OAAOC,OAAO,GAAe,UAAU,GAAG,CAAC;EAC3C,OAAOC,UAAU,gBAAYC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;EAC5C,OAAOC,WAAW,gBAAWF,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;EACrD;;;;EAIAE,YAAoBP,WAA4B;IAA5B,KAAAA,WAAW,GAAXA,WAAW;EAAoB;EACnD;;;EAGAQ,KAAKA,CAAA;IACH,OAAO,IAAIT,aAAa,CAAC,IAAI,CAACC,WAAW,CAAC;EAC5C;EACQS,SAASA,CAACC,QAAgB,EAAEC,QAAgB;IAClD,OAAOb,sBAAsB,CAACY,QAAQ,EAAEC,QAAQ,EAAE,IAAI,CAACX,WAAW,CAAC;EACrE;EACA;;;;EAIAY,IAAIA,CAACC,IAAY;IACf,OAAO,IAAI,CAACJ,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAII,IAAI,IAAI,CAAC,CAAC;EAC3C;EACA;;;EAGAC,WAAWA,CAAA;IACT,OAAO,IAAI,CAACL,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC;EACnC;EAWAM,OAAOA,CAACC,GAAY,EAAEC,GAAY;IAChC,OAAO,IAAI,CAACR,SAAS,CAACO,GAAG,IAAI,IAAI,GAAGjB,aAAa,CAACE,OAAO,GAAGe,GAAG,EAAEC,GAAG,IAAI,IAAI,GAAGlB,aAAa,CAACG,OAAO,GAAGe,GAAG,CAAC;EAC7G;EACA;;;;;EAKAC,UAAUA,CAACF,GAAW,EAAEC,GAAW;IACjC,OAAOpB,yBAAyB,CAACmB,GAAG,EAAEC,GAAG,EAAE,IAAI,CAACjB,WAAW,CAAC;EAC9D;EACA;;;;;EAKAmB,YAAYA,CACVH,GAGC,EACDC,GAGC;IAKD,OAAOrB,2BAA2B,CAACoB,GAAG,EAAEC,GAAG,EAAE,IAAI,CAACjB,WAAW,CAAC;EAChE;EACA;;;EAGAoB,UAAUA,CAAA;IACR,MAAMC,CAAC,GAAG,IAAI,CAACT,IAAI,CAAC,EAAE,CAAC;IACvB,MAAMU,CAAC,GAAG,IAAI,CAACV,IAAI,CAAC,EAAE,CAAC;IACvB,OAAO,CAACS,CAAC,GAAGtB,aAAa,CAACI,UAAU,GAAGmB,CAAC,IAAIvB,aAAa,CAACO,WAAW;EACvE;EACAiB,OAAOA,CAACC,IAAY;IAClB,IAAI,CAACxB,WAAW,CAACuB,OAAO,CAACC,IAAI,CAAC;EAChC","ignoreList":[]}
@@ -5,6 +5,8 @@ const UPPER_MASK = 0x80000000;
5
5
  const LOWER_MASK = 0x7fffffff;
6
6
  const MATRIX_A = 0x9908b0df;
7
7
  export class MersenneTwister {
8
+ mt;
9
+ mti;
8
10
  constructor(seed) {
9
11
  this.mt = new Array(N);
10
12
  this.mti = N + 1;
@@ -1 +1 @@
1
- {"version":3,"file":"MersenneTwister.mjs","names":["MAX_INT","N","M","UPPER_MASK","LOWER_MASK","MATRIX_A","MersenneTwister","constructor","seed","mt","Array","mti","setSeed","Date","now","s","seedArray","vector","i","j","k","length","next","y","kk","mag01","min","max"],"sources":["../../../../_src/util/rand/generator/MersenneTwister.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MersenneTwister.mjs","names":["MAX_INT","N","M","UPPER_MASK","LOWER_MASK","MATRIX_A","MersenneTwister","mt","mti","constructor","seed","Array","setSeed","Date","now","s","seedArray","vector","i","j","k","length","next","y","kk","mag01","min","max"],"sources":["../../../../_src/util/rand/generator/MersenneTwister.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -257,7 +257,6 @@ export function filterWithIndex<A>(p: PredicateWithIndex<number, A>) {
257
257
  */
258
258
  export function find<A, B extends A>(refinement: Refinement<A, B>): (self: Iterable<A>) => Maybe<B>;
259
259
  export function find<A>(predicate: Predicate<A>): (self: Iterable<A>) => Maybe<A>;
260
-
261
260
  export function find<A>(predicate: Predicate<A>) {
262
261
  return (self: Iterable<A>): Maybe<A> => {
263
262
  for (const value of self) {
@@ -268,14 +268,19 @@ export const _Empty = new Empty<never>();
268
268
  export class Concat<A> extends ConcImplementation<A> {
269
269
  declare _A: () => A;
270
270
  readonly _tag = ConcTag.Concat;
271
- length = this.left.length + this.right.length;
272
- depth = 1 + Math.max(this.left.depth, this.right.depth);
273
- binary = this.left.binary && this.right.binary;
271
+
272
+ readonly length: number;
273
+ readonly depth: number;
274
+ readonly binary: boolean;
275
+
274
276
  constructor(
275
277
  readonly left: ConcImplementation<A>,
276
278
  readonly right: ConcImplementation<A>,
277
279
  ) {
278
280
  super();
281
+ this.length = this.left.length + this.right.length;
282
+ this.depth = 1 + Math.max(this.left.depth, this.right.depth);
283
+ this.binary = this.left.binary && this.right.binary;
279
284
  }
280
285
  get(n: number): A {
281
286
  return n < this.left.length ? this.left.get(n) : this.right.get(n - this.left.length);
@@ -306,8 +311,9 @@ export class Concat<A> extends ConcImplementation<A> {
306
311
  class AppendN<A> extends ConcImplementation<A> {
307
312
  readonly _tag = ConcTag.AppendN;
308
313
 
309
- length: number;
310
- depth = this.start.depth + 1;
314
+ readonly length: number;
315
+ readonly depth: number;
316
+
311
317
  left = _Empty;
312
318
  right = _Empty;
313
319
 
@@ -319,6 +325,7 @@ class AppendN<A> extends ConcImplementation<A> {
319
325
  ) {
320
326
  super();
321
327
  this.length = this.start.length + this.bufferUsed;
328
+ this.depth = this.start.depth + 1;
322
329
  }
323
330
 
324
331
  [Symbol.iterator](): Iterator<A> {
@@ -53,7 +53,10 @@ export class HashMap<in out K, in out V> implements Iterable<readonly [K, V]>, H
53
53
  return (
54
54
  isHashMap(other) &&
55
55
  other.size === this.size &&
56
- (this as Iterable<readonly [K, V]>).corresponds(other, Equatable.strictEquals)
56
+ (this as Iterable<readonly [K, V]>).corresponds(
57
+ other,
58
+ ([ka, va], [kb, vb]) => Equatable.strictEquals(ka, kb) && Equatable.strictEquals(va, vb),
59
+ )
57
60
  );
58
61
  }
59
62
  }
@@ -365,9 +365,8 @@ export function join(separator: string) {
365
365
  let result: IteratorResult<string>;
366
366
  while (!(result = iterator.next()).done) {
367
367
  if (first) {
368
- first = false;
369
- s += result.value;
370
- result = iterator.next();
368
+ first = false;
369
+ s += result.value;
371
370
  } else {
372
371
  s += separator;
373
372
  s += result.value;
@@ -12,6 +12,8 @@
12
12
  * for more information regarding copyright ownership
13
13
  */
14
14
 
15
+ import type { EqualsContext } from "@fncts/base/data/Equatable";
16
+
15
17
  export const ListTypeId = Symbol.for("fncts.List");
16
18
  export type ListTypeId = typeof ListTypeId;
17
19
 
@@ -19,7 +21,7 @@ export type ListTypeId = typeof ListTypeId;
19
21
  * @tsplus type fncts.List.Cons
20
22
  * @tsplus companion fncts.ConsOps
21
23
  */
22
- export class Cons<A> implements Iterable<A> {
24
+ export class Cons<A> implements Iterable<A>, Equatable {
23
25
  readonly _tag = "Cons";
24
26
  readonly [ListTypeId]: ListTypeId = ListTypeId;
25
27
  constructor(
@@ -27,6 +29,18 @@ export class Cons<A> implements Iterable<A> {
27
29
  public tail: List<A> = _Nil,
28
30
  ) {}
29
31
 
32
+ [Symbol.equals](that: unknown, context: EqualsContext): boolean {
33
+ return (
34
+ isList(that) &&
35
+ that._tag === "Cons" &&
36
+ context.comparator(this.head, that.head) &&
37
+ context.comparator(this.tail, that.tail)
38
+ );
39
+ }
40
+
41
+ /**
42
+ * Iterates elements from this node through the tail.
43
+ */
30
44
  [Symbol.iterator](): Iterator<A> {
31
45
  let done = false;
32
46
 
@@ -58,9 +72,17 @@ export class Cons<A> implements Iterable<A> {
58
72
  * @tsplus type fncts.List.Nil
59
73
  * @tsplus companion fncts.NilOps
60
74
  */
61
- export class Nil<A> implements Iterable<A> {
75
+ export class Nil<A> implements Iterable<A>, Equatable {
62
76
  readonly _tag = "Nil";
63
77
  readonly [ListTypeId]: ListTypeId = ListTypeId;
78
+
79
+ [Symbol.equals](that: unknown, context: EqualsContext): boolean {
80
+ return isList(that) && that._tag === "Nil";
81
+ }
82
+
83
+ /**
84
+ * Returns an iterator that is immediately done.
85
+ */
64
86
  [Symbol.iterator](): Iterator<A> {
65
87
  return {
66
88
  next() {
@@ -158,7 +158,6 @@ export function concat<A>(that: Vector<A>) {
158
158
  * @tsplus pipeable fncts.Vector filter
159
159
  */
160
160
  export function filter<A, B extends A>(refinement: Refinement<A, B>): (self: Vector<A>) => Vector<B>;
161
-
162
161
  export function filter<A>(predicate: Predicate<A>): (self: Vector<A>) => Vector<A>;
163
162
  export function filter<A>(predicate: Predicate<A>) {
164
163
  return (self: Vector<A>): Vector<A> => {
@@ -194,7 +193,6 @@ export function filterMapWithIndex<A, B>(f: (i: number, a: A) => Maybe<B>) {
194
193
  export function filterWithIndex<A, B extends A>(
195
194
  refinement: RefinementWithIndex<number, A, B>,
196
195
  ): (self: Vector<A>) => Vector<B>;
197
-
198
196
  export function filterWithIndex<A>(predicate: PredicateWithIndex<number, A>): (self: Vector<A>) => Vector<A>;
199
197
  export function filterWithIndex<A>(predicate: PredicateWithIndex<number, A>) {
200
198
  return (self: Vector<A>): Vector<A> => {
@@ -1078,9 +1076,10 @@ export function single<A>(a: A): Vector<A> {
1078
1076
  export function slice(from: number, to: number) {
1079
1077
  return <A>(self: Vector<A>): Vector<A> => {
1080
1078
  let { bits, length } = self;
1081
- let _to = to;
1082
- let _from = from;
1083
- _to = Math.min(length, to);
1079
+ // eslint-disable-next-line no-useless-assignment
1080
+ let _to = to;
1081
+ let _from = from;
1082
+ _to = Math.min(length, to);
1084
1083
  // Handle negative indices
1085
1084
  if (_from < 0) {
1086
1085
  _from = length + from;
@@ -1381,7 +1380,6 @@ export function traverseWithIndex_<A>(
1381
1380
  ) => <K, Q, W, X, I, S, R, E, B>(
1382
1381
  f: (i: number, a: A) => HKT.Kind<G, GC, K, Q, W, X, I, S, R, E, B>,
1383
1382
  ) => HKT.Kind<G, GC, K, Q, W, X, I, S, R, E, Vector<B>>;
1384
-
1385
1383
  export function traverseWithIndex_<A>(
1386
1384
  self: Vector<A>,
1387
1385
  ): <G>(G: P.Applicative<HKT.F<G>>) => <B>(f: (i: number, a: A) => HKT.FK1<G, B>) => HKT.FK1<G, Vector<B>> {
@@ -1,7 +1,10 @@
1
1
  import type { Node } from "@fncts/base/collection/immutable/Vector/internal";
2
+ import type { EqualsContext } from "@fncts/base/data/Equatable";
3
+ import type { ShowComputationExternal } from "@fncts/base/data/Showable";
2
4
 
3
5
  import { foldLeftCb } from "@fncts/base/collection/immutable/Vector/internal";
4
6
  import { ForwardVectorIterator } from "@fncts/base/collection/immutable/Vector/internal";
7
+ import { _show, showComputationComplex } from "@fncts/base/data/Showable";
5
8
 
6
9
  export const VectorVariance = Symbol.for("fncts.Vector.Variance");
7
10
  export type VectorVariance = typeof VectorVariance;
@@ -23,7 +26,7 @@ export interface VectorF extends HKT {
23
26
  * @tsplus type fncts.Vector
24
27
  * @tsplus companion fncts.VectorOps
25
28
  */
26
- export class Vector<A> implements Iterable<A> {
29
+ export class Vector<A> implements Iterable<A>, Equatable {
27
30
  readonly [VectorTypeId]: VectorTypeId = VectorTypeId;
28
31
  declare [VectorVariance]: {
29
32
  readonly _A: (_: never) => A;
@@ -47,8 +50,15 @@ export class Vector<A> implements Iterable<A> {
47
50
  get [Symbol.hash](): number {
48
51
  return Hashable.iterator(this[Symbol.iterator]());
49
52
  }
50
- [Symbol.equals](that: unknown): boolean {
51
- return isVector(that) && (this as Vector<A>).corresponds(that, Equatable.strictEquals);
53
+ [Symbol.equals](that: unknown, context: EqualsContext): boolean {
54
+ return isVector(that) && (this as Vector<A>).corresponds(that, context.comparator);
55
+ }
56
+ get [Symbol.showable](): ShowComputationExternal {
57
+ return showComputationComplex({
58
+ base: Pure.succeedNow("Vector"),
59
+ braces: ["[", "]"],
60
+ indices: this.traverseToConc(Pure.Applicative)((a) => _show(a)),
61
+ });
52
62
  }
53
63
  }
54
64
 
@@ -70,6 +80,7 @@ export interface MutableVector<A> {
70
80
  [Symbol.iterator]: () => Iterator<A>;
71
81
  [Symbol.hash]: number;
72
82
  [Symbol.equals](that: unknown): boolean;
83
+ get [Symbol.showable](): ShowComputationExternal;
73
84
  /**
74
85
  * This property doesn't exist at run-time. It exists to prevent a
75
86
  * MutableVector from being assignable to a Vector.
@@ -590,8 +590,9 @@ export function prependNodeToTree<A>(l: MutableVector<A>, array: A[]): Vector<A>
590
590
  }
591
591
  return l;
592
592
  } else {
593
- const node = new Node(undefined, array);
594
- const depth = getDepth(l);
593
+ const node = new Node(undefined, array);
594
+ const depth = getDepth(l);
595
+ // eslint-disable-next-line no-useless-assignment
595
596
  let newOffset = 0;
596
597
  if (l.root.sizes === undefined) {
597
598
  if (l.offset !== 0) {
@@ -935,8 +936,9 @@ export const concatBuffer = new Array(3);
935
936
  */
936
937
  export function concatAffixes<A>(left: Vector<A>, right: Vector<A>): number {
937
938
  // TODO: Try and find a neat way to reduce the LOC here
938
- let nr = 0;
939
- let arrIdx = 0;
939
+ let nr = 0;
940
+ let arrIdx = 0;
941
+ // eslint-disable-next-line no-useless-assignment
940
942
  let i = 0;
941
943
  let length = getSuffixSize(left);
942
944
  concatBuffer[nr] = [];
@@ -1237,8 +1239,10 @@ function foldLeftNodeCb<A, B>(
1237
1239
  export function foldLeftCb<A, B>(cb: FoldCb<A, B>, state: B, l: Vector<A>): B {
1238
1240
  const prefixSize = getPrefixSize(l);
1239
1241
  let i = prefixSize - 1;
1240
- let cont = true;
1241
- [cont, i] = foldRightArrayCb(cb, state, l.prefix, prefixSize, 0, i);
1242
+ // eslint-disable-next-line no-useless-assignment
1243
+ let cont = true;
1244
+ // eslint-disable-next-line no-useless-assignment
1245
+ [cont, i] = foldRightArrayCb(cb, state, l.prefix, prefixSize, 0, i);
1242
1246
  if (!cont) {
1243
1247
  return state;
1244
1248
  }
@@ -1280,12 +1284,14 @@ export function foldRightCb<A, B>(cb: FoldCb<A, B>, state: B, l: Vector<A>): B {
1280
1284
  const suffixSize = getSuffixSize(l);
1281
1285
  const prefixSize = getPrefixSize(l);
1282
1286
  let i = l.length - 1;
1283
- let cont = true;
1284
- [cont, i] = foldRightArrayCb(cb, state, l.suffix, suffixSize, 0, i);
1287
+ // eslint-disable-next-line no-useless-assignment
1288
+ let cont = true;
1289
+ [cont, i] = foldRightArrayCb(cb, state, l.suffix, suffixSize, 0, i);
1285
1290
  if (!cont) {
1286
1291
  return state;
1287
1292
  }
1288
1293
  if (l.root !== undefined) {
1294
+ // eslint-disable-next-line no-useless-assignment
1289
1295
  [cont, i] = foldRightNodeCb(cb, state, l.root, getDepth(l), i);
1290
1296
  if (!cont) {
1291
1297
  return state;
@@ -82,14 +82,14 @@ export class IterableWeakMap<K extends object, V> implements Iterable<readonly [
82
82
  return n;
83
83
  }
84
84
 
85
- [Symbol.iterator](this: this): IterableIterator<[K, V]> {
85
+ [Symbol.iterator](this: this): MapIterator<[K, V]> {
86
86
  return this.entries();
87
87
  }
88
88
  get [Symbol.toStringTag](): string {
89
89
  return this.weakMap[Symbol.toStringTag];
90
90
  }
91
91
 
92
- *entries(this: this): IterableIterator<[K, V]> {
92
+ *entries(this: this): MapIterator<[K, V]> {
93
93
  for (const ref of this.refSet) {
94
94
  const key = ref.deref();
95
95
  if (!key) continue;
@@ -98,13 +98,13 @@ export class IterableWeakMap<K extends object, V> implements Iterable<readonly [
98
98
  }
99
99
  }
100
100
 
101
- *keys(this: this): IterableIterator<K> {
101
+ *keys(this: this): MapIterator<K> {
102
102
  for (const [key] of this) {
103
103
  yield key;
104
104
  }
105
105
  }
106
106
 
107
- *values(): IterableIterator<V> {
107
+ *values(): MapIterator<V> {
108
108
  for (const [, value] of this) {
109
109
  yield value;
110
110
  }
@@ -50,11 +50,11 @@ export class IterableWeakSet<A extends object> implements Iterable<A>, Set<A> {
50
50
  return this.weakMap.has(value);
51
51
  }
52
52
 
53
- keys(): IterableIterator<A> {
53
+ keys(): MapIterator<A> {
54
54
  return this[Symbol.iterator]();
55
55
  }
56
56
 
57
- values(): IterableIterator<A> {
57
+ values(): MapIterator<A> {
58
58
  return this[Symbol.iterator]();
59
59
  }
60
60
 
@@ -87,7 +87,7 @@ export class IterableWeakSet<A extends object> implements Iterable<A>, Set<A> {
87
87
  return n;
88
88
  }
89
89
 
90
- *[Symbol.iterator](this: this): IterableIterator<A> {
90
+ *[Symbol.iterator](this: this): MapIterator<A> {
91
91
  for (const ref of this.refSet) {
92
92
  const key = ref.deref();
93
93
  if (!key) continue;
@@ -99,7 +99,7 @@ export class IterableWeakSet<A extends object> implements Iterable<A>, Set<A> {
99
99
  return this.refSet[Symbol.toStringTag];
100
100
  }
101
101
 
102
- *entries(this: this): IterableIterator<[A, A]> {
102
+ *entries(this: this): MapIterator<[A, A]> {
103
103
  for (const ref of this.refSet) {
104
104
  const key = ref.deref();
105
105
  if (!key) continue;
@@ -38,5 +38,6 @@ const UNSET = Symbol.for("@tsplus/base/control/Eval/UNSET");
38
38
  */
39
39
  export function later<A>(make: Lazy<A>): Eval<A> {
40
40
  let v: A | typeof UNSET = UNSET;
41
+ // eslint-disable-next-line no-useless-assignment
41
42
  return Eval(v === UNSET ? (((v = make()), (make = null!)), v) : v);
42
43
  }
@@ -1,3 +1,4 @@
1
+ import type { EqualsContext } from "@fncts/base/data/Equatable";
1
2
  import type { Union } from "@fncts/typelevel";
2
3
  declare const validSym: unique symbol;
3
4
  export declare namespace Brand {
@@ -42,11 +43,15 @@ export declare namespace Brand {
42
43
  * @tsplus companion fncts.ValidationOps
43
44
  * @tsplus derive nominal
44
45
  */
45
- export class Validation<in out A, in out K extends string> {
46
+ export class Validation<in out A, in out K extends string> implements Equatable {
46
47
  constructor(
47
48
  readonly validate: Refinement<A, A & Brand.Valid<A, K>>,
48
49
  readonly name: K,
49
50
  ) {}
51
+
52
+ [Symbol.equals](that: unknown, context: EqualsContext): boolean {
53
+ return that instanceof Validation && this.name === that.name && context.comparator(this.validate, that.validate);
54
+ }
50
55
  }
51
56
 
52
57
  /**
@@ -102,7 +102,6 @@ export function Tagged<Tag extends string | symbol, Key extends string | symbol>
102
102
  ): CaseConstructorTagged<Tag, string> {
103
103
  if (key) {
104
104
  class X extends CaseClass<{}> {
105
- // @ts-expect-error
106
105
  readonly [key] = tag;
107
106
  }
108
107
  // @ts-expect-error
@@ -506,18 +506,14 @@ export function flipCauseOption<E>(self: Cause<Maybe<E>>): Maybe<Cause<E>> {
506
506
 
507
507
  if (l.isJust() && result.isJust()) {
508
508
  result = Just(Cause.sequential(l.value, result.value));
509
- }
510
-
511
- if (l.isNothing() && result.isJust()) {
509
+ } else if (l.isNothing() && result.isJust()) {
512
510
  result = Just(result.value);
513
- }
514
-
515
- if (l.isJust() && result.isNothing()) {
511
+ } else if (l.isJust() && result.isNothing()) {
516
512
  result = Just(l.value);
513
+ } else {
514
+ result = Nothing();
517
515
  }
518
516
 
519
- result = Nothing();
520
-
521
517
  continue popping;
522
518
  }
523
519
  case "FCOStackFrameBothLeft":
@@ -529,18 +525,14 @@ export function flipCauseOption<E>(self: Cause<Maybe<E>>): Maybe<Cause<E>> {
529
525
 
530
526
  if (l.isJust() && result.isJust()) {
531
527
  result = Just(Cause.parallel(l.value, result.value));
532
- }
533
-
534
- if (l.isNothing() && result.isJust()) {
528
+ } else if (l.isNothing() && result.isJust()) {
535
529
  result = Just(result.value);
536
- }
537
-
538
- if (l.isJust() && result.isNothing()) {
530
+ } else if (l.isJust() && result.isNothing()) {
539
531
  result = Just(l.value);
532
+ } else {
533
+ result = Nothing();
540
534
  }
541
535
 
542
- result = Nothing();
543
-
544
536
  continue popping;
545
537
  }
546
538
  }
package/_src/data/Data.ts CHANGED
@@ -102,7 +102,6 @@ export const TaggedClass = <Tag extends string | symbol, Key extends string | sy
102
102
  ): TaggedDataClassConstructor<Tag, Key> => {
103
103
  if (key) {
104
104
  class Base extends Structural<any> {
105
- // @ts-expect-error
106
105
  readonly [key] = tag;
107
106
  }
108
107
  return Base as any;
@@ -44,9 +44,7 @@ export function extend<A, B>(f: (wa: Datum<A>) => B) {
44
44
  * @tsplus pipeable fncts.Datum filter
45
45
  */
46
46
  export function filter<A, B extends A>(p: Refinement<A, B>): (self: Datum<A>) => Datum<B>;
47
-
48
47
  export function filter<A>(p: Predicate<A>): (self: Datum<A>) => Datum<A>;
49
-
50
48
  export function filter<A>(p: Predicate<A>) {
51
49
  return (self: Datum<A>): Datum<A> => {
52
50
  return self.match({
@@ -157,7 +157,6 @@ export function orElse<F extends HKT, FC = HKT.None>(
157
157
  HKT.Mix<F, "E", [EF, EF1]>,
158
158
  Either<E | E1, A | B>
159
159
  >;
160
-
161
160
  export function orElse<F>(F: P.Monad<HKT.F1<F>>) {
162
161
  return <E, A, E1, B>(
163
162
  that: Lazy<HKT.FK1<F, Either<E1, B>>>,