@fncts/base 0.0.39 → 0.0.41

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 (722) hide show
  1. package/_cjs/collection/AsyncIterable/api.cjs +384 -0
  2. package/_cjs/collection/AsyncIterable/api.cjs.map +1 -0
  3. package/_cjs/collection/AsyncIterable/definition.cjs +2 -0
  4. package/_cjs/collection/AsyncIterable/definition.cjs.map +1 -0
  5. package/_cjs/collection/{compat/Array.cjs → AsyncIterable.cjs} +3 -3
  6. package/_cjs/collection/AsyncIterable.cjs.map +1 -0
  7. package/_cjs/collection/Iterable/api/traverseConc.cjs +1 -2
  8. package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
  9. package/_cjs/collection/Iterable/api.cjs +180 -137
  10. package/_cjs/collection/Iterable/api.cjs.map +1 -1
  11. package/_cjs/collection/Iterable/constructors.cjs.map +1 -1
  12. package/_cjs/collection/compat/ArrayLike/api.cjs +1 -2
  13. package/_cjs/collection/compat/ArrayLike/api.cjs.map +1 -1
  14. package/_cjs/collection/compat/ArrayLike/definition.cjs +0 -4
  15. package/_cjs/collection/compat/Map/definition.cjs +0 -4
  16. package/_cjs/collection/compat/Set/definition.cjs +0 -4
  17. package/_cjs/collection/compat.cjs +0 -4
  18. package/_cjs/collection/immutable/Conc/api/makeBy.cjs +1 -2
  19. package/_cjs/collection/immutable/Conc/api/makeBy.cjs.map +1 -1
  20. package/_cjs/collection/immutable/Conc/api/replicate.cjs +1 -2
  21. package/_cjs/collection/immutable/Conc/api/replicate.cjs.map +1 -1
  22. package/_cjs/collection/immutable/Conc/api.cjs +1 -2
  23. package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
  24. package/_cjs/collection/immutable/Conc/constructors.cjs +3 -4
  25. package/_cjs/collection/immutable/Conc/constructors.cjs.map +1 -1
  26. package/_cjs/collection/immutable/Conc/definition.cjs +3 -3
  27. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  28. package/_cjs/collection/immutable/Dictionary/api.cjs +1 -2
  29. package/_cjs/collection/immutable/Dictionary/api.cjs.map +1 -1
  30. package/_cjs/collection/immutable/Dictionary/definition.cjs +1 -2
  31. package/_cjs/collection/immutable/Dictionary/definition.cjs.map +1 -1
  32. package/_cjs/collection/immutable/HashMap/api.cjs +1 -2
  33. package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
  34. package/_cjs/collection/immutable/HashMap/definition.cjs +1 -2
  35. package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
  36. package/_cjs/collection/immutable/HashMap/internal.cjs +1 -2
  37. package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
  38. package/_cjs/collection/immutable/HashSet/api.cjs +1 -2
  39. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  40. package/_cjs/collection/immutable/HashSet/definition.cjs +1 -2
  41. package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
  42. package/_cjs/collection/immutable/List/api/foldLeft.cjs +1 -2
  43. package/_cjs/collection/immutable/List/api/foldLeft.cjs.map +1 -1
  44. package/_cjs/collection/immutable/List/api/unsafeTail.cjs +1 -2
  45. package/_cjs/collection/immutable/List/api/unsafeTail.cjs.map +1 -1
  46. package/_cjs/collection/immutable/List/api.cjs +3 -4
  47. package/_cjs/collection/immutable/List/api.cjs.map +1 -1
  48. package/_cjs/collection/immutable/List/constructors.cjs +1 -2
  49. package/_cjs/collection/immutable/List/constructors.cjs.map +1 -1
  50. package/_cjs/collection/immutable/List/definition.cjs +1 -2
  51. package/_cjs/collection/immutable/List/definition.cjs.map +1 -1
  52. package/_cjs/collection/immutable/Queue/api.cjs +1 -2
  53. package/_cjs/collection/immutable/Queue/api.cjs.map +1 -1
  54. package/_cjs/collection/immutable/Queue/constructors.cjs +1 -2
  55. package/_cjs/collection/immutable/Queue/constructors.cjs.map +1 -1
  56. package/_cjs/collection/immutable/Queue/definition.cjs +1 -2
  57. package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
  58. package/_cjs/collection/immutable/Queue/guards.cjs +1 -2
  59. package/_cjs/collection/immutable/Queue/guards.cjs.map +1 -1
  60. package/_cjs/collection/immutable/ReadonlyArray/api/chunksOf.cjs +18 -0
  61. package/_cjs/collection/immutable/ReadonlyArray/api/chunksOf.cjs.map +1 -0
  62. package/_cjs/collection/immutable/ReadonlyArray/api/splitAt.cjs +15 -0
  63. package/_cjs/collection/immutable/ReadonlyArray/api/splitAt.cjs.map +1 -0
  64. package/_cjs/collection/immutable/ReadonlyArray/api/splitWhere.cjs +26 -0
  65. package/_cjs/collection/immutable/ReadonlyArray/api/splitWhere.cjs.map +1 -0
  66. package/_cjs/collection/immutable/{ImmutableArray → ReadonlyArray}/api.cjs +562 -538
  67. package/_cjs/collection/immutable/ReadonlyArray/api.cjs.map +1 -0
  68. package/_cjs/collection/immutable/ReadonlyArray/constructors.cjs +55 -0
  69. package/_cjs/collection/immutable/ReadonlyArray/constructors.cjs.map +1 -0
  70. package/_cjs/collection/immutable/ReadonlyArray/definition.cjs.map +1 -0
  71. package/_cjs/collection/immutable/{ImmutableArray → ReadonlyArray}/instances.cjs +5 -7
  72. package/_cjs/collection/immutable/ReadonlyArray/instances.cjs.map +1 -0
  73. package/_cjs/collection/immutable/{ImmutableArray.cjs → ReadonlyArray.cjs} +8 -19
  74. package/_cjs/collection/immutable/ReadonlyArray.cjs.map +1 -0
  75. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/api.cjs +472 -0
  76. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/api.cjs.map +1 -0
  77. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/constructors.cjs +79 -0
  78. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/constructors.cjs.map +1 -0
  79. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/definition.cjs +2 -0
  80. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/definition.cjs.map +1 -0
  81. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/destructors.cjs +49 -0
  82. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/destructors.cjs.map +1 -0
  83. package/_cjs/collection/immutable/{ImmutableNonEmptyArray → ReadonlyNonEmptyArray}/instances.cjs +3 -4
  84. package/_cjs/collection/immutable/ReadonlyNonEmptyArray/instances.cjs.map +1 -0
  85. package/_cjs/collection/immutable/{ImmutableNonEmptyArray.cjs → ReadonlyNonEmptyArray.cjs} +6 -6
  86. package/_cjs/collection/immutable/ReadonlyNonEmptyArray.cjs.map +1 -0
  87. package/_cjs/collection/immutable/RoseTree/api.cjs +1 -2
  88. package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -1
  89. package/_cjs/collection/immutable/RoseTree/definition.cjs +1 -2
  90. package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
  91. package/_cjs/collection/immutable/SortedMap/api.cjs +1 -2
  92. package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
  93. package/_cjs/collection/immutable/SortedMap/iterator.cjs +1 -2
  94. package/_cjs/collection/immutable/SortedMap/iterator.cjs.map +1 -1
  95. package/_cjs/collection/immutable/Vector/api.cjs +229 -230
  96. package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
  97. package/_cjs/collection/immutable/Vector/definition.cjs +1 -2
  98. package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
  99. package/_cjs/collection/immutable.cjs +0 -4
  100. package/_cjs/collection/internal.cjs +0 -4
  101. package/_cjs/collection/mutable/ArrayDeque.cjs +1 -2
  102. package/_cjs/collection/mutable/ArrayDeque.cjs.map +1 -1
  103. package/_cjs/collection/mutable/HashMap.cjs +1 -2
  104. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  105. package/_cjs/collection/mutable/HashSet.cjs +1 -2
  106. package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
  107. package/_cjs/collection/mutable/ListBuffer.cjs +1 -2
  108. package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
  109. package/_cjs/collection/mutable.cjs +0 -4
  110. package/_cjs/collection/weak/IterableWeakMap.cjs +1 -2
  111. package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
  112. package/_cjs/collection/weak.cjs +0 -4
  113. package/_cjs/collection.cjs +0 -4
  114. package/_cjs/control/Eval/api.cjs +89 -41
  115. package/_cjs/control/Eval/api.cjs.map +1 -1
  116. package/_cjs/control/Eval/constructors.cjs +5 -1
  117. package/_cjs/control/Eval/constructors.cjs.map +1 -1
  118. package/_cjs/control/Eval/instance.cjs +1 -2
  119. package/_cjs/control/Eval/instance.cjs.map +1 -1
  120. package/_cjs/control/Eval/run.cjs +1 -2
  121. package/_cjs/control/Eval/run.cjs.map +1 -1
  122. package/_cjs/control/Pure/api.cjs +1 -2
  123. package/_cjs/control/Pure/api.cjs.map +1 -1
  124. package/_cjs/control/Pure/definition.cjs +1 -2
  125. package/_cjs/control/Pure/definition.cjs.map +1 -1
  126. package/_cjs/control/Pure/instances.cjs +1 -2
  127. package/_cjs/control/Pure/instances.cjs.map +1 -1
  128. package/_cjs/control/Pure/runtime.cjs +15 -10
  129. package/_cjs/control/Pure/runtime.cjs.map +1 -1
  130. package/_cjs/control.cjs +0 -4
  131. package/_cjs/data/Byte.cjs +0 -4
  132. package/_cjs/data/CaseClass.cjs +11 -14
  133. package/_cjs/data/CaseClass.cjs.map +1 -1
  134. package/_cjs/data/Cause/api/fold.cjs +33 -34
  135. package/_cjs/data/Cause/api/fold.cjs.map +1 -1
  136. package/_cjs/data/Cause/api/isEmpty.cjs +1 -2
  137. package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
  138. package/_cjs/data/Cause/api/linearize.cjs +1 -2
  139. package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
  140. package/_cjs/data/Cause/api/prettyPrint.cjs +1 -2
  141. package/_cjs/data/Cause/api/prettyPrint.cjs.map +1 -1
  142. package/_cjs/data/Cause/api/unified.cjs +1 -2
  143. package/_cjs/data/Cause/api/unified.cjs.map +1 -1
  144. package/_cjs/data/Cause/api.cjs +1 -2
  145. package/_cjs/data/Cause/api.cjs.map +1 -1
  146. package/_cjs/data/Cause/definition.cjs +1 -2
  147. package/_cjs/data/Cause/definition.cjs.map +1 -1
  148. package/_cjs/data/Const/api.cjs +7 -7
  149. package/_cjs/data/Const/api.cjs.map +1 -1
  150. package/_cjs/data/Const/instances.cjs +12 -13
  151. package/_cjs/data/Const/instances.cjs.map +1 -1
  152. package/_cjs/data/Data.cjs +1 -2
  153. package/_cjs/data/Data.cjs.map +1 -1
  154. package/_cjs/data/Date/definition.cjs +0 -4
  155. package/_cjs/data/Datum/api.cjs +110 -113
  156. package/_cjs/data/Datum/api.cjs.map +1 -1
  157. package/_cjs/data/Datum/definition.cjs +1 -2
  158. package/_cjs/data/Datum/definition.cjs.map +1 -1
  159. package/_cjs/data/Datum/instances.cjs +1 -2
  160. package/_cjs/data/Datum/instances.cjs.map +1 -1
  161. package/_cjs/data/Datum.cjs +39 -0
  162. package/_cjs/data/Datum.cjs.map +1 -0
  163. package/_cjs/data/DatumEither/api.cjs +56 -57
  164. package/_cjs/data/DatumEither/api.cjs.map +1 -1
  165. package/_cjs/data/Duration/api.cjs +1 -2
  166. package/_cjs/data/Duration/api.cjs.map +1 -1
  167. package/_cjs/data/Duration/definition.cjs +1 -2
  168. package/_cjs/data/Duration/definition.cjs.map +1 -1
  169. package/_cjs/data/Either/api/align.cjs +1 -2
  170. package/_cjs/data/Either/api/align.cjs.map +1 -1
  171. package/_cjs/data/Either/api/alignWith.cjs +1 -2
  172. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  173. package/_cjs/data/Either/api.cjs +53 -55
  174. package/_cjs/data/Either/api.cjs.map +1 -1
  175. package/_cjs/data/Either/constructors.cjs +21 -22
  176. package/_cjs/data/Either/constructors.cjs.map +1 -1
  177. package/_cjs/data/Either/definition.cjs +1 -2
  178. package/_cjs/data/Either/definition.cjs.map +1 -1
  179. package/_cjs/data/Either/instances.cjs +1 -2
  180. package/_cjs/data/Either/instances.cjs.map +1 -1
  181. package/_cjs/data/EitherT/api.cjs +28 -29
  182. package/_cjs/data/EitherT/api.cjs.map +1 -1
  183. package/_cjs/data/Environment/api.cjs +1 -2
  184. package/_cjs/data/Environment/api.cjs.map +1 -1
  185. package/_cjs/data/Environment/definition.cjs +1 -2
  186. package/_cjs/data/Environment/definition.cjs.map +1 -1
  187. package/_cjs/data/EnvironmentPatch.cjs +2 -3
  188. package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
  189. package/_cjs/data/Eq/api.cjs +189 -5
  190. package/_cjs/data/Eq/api.cjs.map +1 -1
  191. package/_cjs/data/Eq/derivations.cjs +10 -21
  192. package/_cjs/data/Eq/derivations.cjs.map +1 -1
  193. package/_cjs/data/Equatable/api.cjs +1 -2
  194. package/_cjs/data/Equatable/api.cjs.map +1 -1
  195. package/_cjs/data/Equatable/definition.cjs +1 -2
  196. package/_cjs/data/Equatable/definition.cjs.map +1 -1
  197. package/_cjs/data/Exit/api.cjs +90 -80
  198. package/_cjs/data/Exit/api.cjs.map +1 -1
  199. package/_cjs/data/Exit/constructors.cjs +1 -2
  200. package/_cjs/data/Exit/constructors.cjs.map +1 -1
  201. package/_cjs/data/Exit/definition.cjs +1 -2
  202. package/_cjs/data/Exit/definition.cjs.map +1 -1
  203. package/_cjs/data/FiberId/api.cjs +1 -2
  204. package/_cjs/data/FiberId/api.cjs.map +1 -1
  205. package/_cjs/data/FiberId/definition.cjs +1 -2
  206. package/_cjs/data/FiberId/definition.cjs.map +1 -1
  207. package/_cjs/data/Guard/api.cjs +13 -17
  208. package/_cjs/data/Guard/api.cjs.map +1 -1
  209. package/_cjs/data/HashEq.cjs +1 -2
  210. package/_cjs/data/HashEq.cjs.map +1 -1
  211. package/_cjs/data/Hashable/definition.cjs +1 -2
  212. package/_cjs/data/Hashable/definition.cjs.map +1 -1
  213. package/_cjs/data/Hashable/hash.cjs +1 -2
  214. package/_cjs/data/Hashable/hash.cjs.map +1 -1
  215. package/_cjs/data/Identity/api.cjs +1 -2
  216. package/_cjs/data/Identity/api.cjs.map +1 -1
  217. package/_cjs/data/Identity/definition.cjs +1 -2
  218. package/_cjs/data/Identity/definition.cjs.map +1 -1
  219. package/_cjs/data/Identity/instances.cjs +1 -2
  220. package/_cjs/data/Identity/instances.cjs.map +1 -1
  221. package/_cjs/data/Interval.cjs +1 -2
  222. package/_cjs/data/Interval.cjs.map +1 -1
  223. package/_cjs/data/Intervals.cjs +1 -2
  224. package/_cjs/data/Intervals.cjs.map +1 -1
  225. package/_cjs/data/Maybe/api.cjs +73 -60
  226. package/_cjs/data/Maybe/api.cjs.map +1 -1
  227. package/_cjs/data/Maybe/constructors.cjs +37 -38
  228. package/_cjs/data/Maybe/constructors.cjs.map +1 -1
  229. package/_cjs/data/Maybe/definition.cjs +1 -2
  230. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  231. package/_cjs/data/Maybe/instances.cjs +1 -2
  232. package/_cjs/data/Maybe/instances.cjs.map +1 -1
  233. package/_cjs/data/Newtype.cjs +1 -2
  234. package/_cjs/data/Newtype.cjs.map +1 -1
  235. package/_cjs/data/Ord/api.cjs +1 -2
  236. package/_cjs/data/Ord/api.cjs.map +1 -1
  237. package/_cjs/data/Ord/definition.cjs +1 -2
  238. package/_cjs/data/Ord/definition.cjs.map +1 -1
  239. package/_cjs/data/Ord/instances.cjs +1 -2
  240. package/_cjs/data/Ord/instances.cjs.map +1 -1
  241. package/_cjs/data/Predicate/definition.cjs +0 -4
  242. package/_cjs/data/Predicate/match.cjs +0 -4
  243. package/_cjs/data/Refinement/definition.cjs +0 -4
  244. package/_cjs/data/Showable/definition.cjs +1 -2
  245. package/_cjs/data/Showable/definition.cjs.map +1 -1
  246. package/_cjs/data/Showable/show.cjs +1 -2
  247. package/_cjs/data/Showable/show.cjs.map +1 -1
  248. package/_cjs/data/Showable/styles.cjs +1 -2
  249. package/_cjs/data/Showable/styles.cjs.map +1 -1
  250. package/_cjs/data/Showable/util.cjs +1 -2
  251. package/_cjs/data/Showable/util.cjs.map +1 -1
  252. package/_cjs/data/Struct/api.cjs +5 -7
  253. package/_cjs/data/Struct/api.cjs.map +1 -1
  254. package/_cjs/data/Struct/definition.cjs +1 -2
  255. package/_cjs/data/Struct/definition.cjs.map +1 -1
  256. package/_cjs/data/Tag/constructors.cjs +1 -2
  257. package/_cjs/data/Tag/constructors.cjs.map +1 -1
  258. package/_cjs/data/Tag/definition.cjs +1 -2
  259. package/_cjs/data/Tag/definition.cjs.map +1 -1
  260. package/_cjs/data/These/api.cjs +86 -87
  261. package/_cjs/data/These/api.cjs.map +1 -1
  262. package/_cjs/data/These/constructors.cjs +1 -2
  263. package/_cjs/data/These/constructors.cjs.map +1 -1
  264. package/_cjs/data/These/definition.cjs +1 -2
  265. package/_cjs/data/These/definition.cjs.map +1 -1
  266. package/_cjs/data/These/destructors.cjs +1 -2
  267. package/_cjs/data/These/destructors.cjs.map +1 -1
  268. package/_cjs/data/These/instances.cjs +1 -2
  269. package/_cjs/data/These/instances.cjs.map +1 -1
  270. package/_cjs/data/Trace/api.cjs +1 -2
  271. package/_cjs/data/Trace/api.cjs.map +1 -1
  272. package/_cjs/data/Trace/constructors.cjs +1 -2
  273. package/_cjs/data/Trace/constructors.cjs.map +1 -1
  274. package/_cjs/data/Zipped.cjs +1 -2
  275. package/_cjs/data/Zipped.cjs.map +1 -1
  276. package/_cjs/data/bigint/definition.cjs +0 -4
  277. package/_cjs/data/bigint/instances.cjs +1 -2
  278. package/_cjs/data/bigint/instances.cjs.map +1 -1
  279. package/_cjs/data/boolean/definition.cjs +0 -4
  280. package/_cjs/data/boolean/instances.cjs +1 -2
  281. package/_cjs/data/boolean/instances.cjs.map +1 -1
  282. package/_cjs/data/exceptions/IOError.cjs +1 -2
  283. package/_cjs/data/exceptions/IOError.cjs.map +1 -1
  284. package/_cjs/data/exceptions/InterruptedException.cjs +1 -2
  285. package/_cjs/data/exceptions/InterruptedException.cjs.map +1 -1
  286. package/_cjs/data/exceptions/RuntimeError.cjs +0 -4
  287. package/_cjs/data/function/definition.cjs +0 -4
  288. package/_cjs/data/number/definition.cjs +0 -4
  289. package/_cjs/data/number/instances.cjs +1 -2
  290. package/_cjs/data/number/instances.cjs.map +1 -1
  291. package/_cjs/data/object/definition.cjs +0 -4
  292. package/_cjs/data/object/instances.cjs +1 -2
  293. package/_cjs/data/object/instances.cjs.map +1 -1
  294. package/_cjs/data/string/api.cjs +1 -2
  295. package/_cjs/data/string/api.cjs.map +1 -1
  296. package/_cjs/data/string/definition.cjs +0 -4
  297. package/_cjs/data/string/instances.cjs +1 -2
  298. package/_cjs/data/string/instances.cjs.map +1 -1
  299. package/_cjs/data.cjs +0 -4
  300. package/_cjs/global.cjs +0 -4
  301. package/_cjs/index.cjs +0 -4
  302. package/_cjs/internal/Stack.cjs +7 -2
  303. package/_cjs/internal/Stack.cjs.map +1 -1
  304. package/_cjs/json.cjs +0 -4
  305. package/_cjs/optics/At/api.cjs +1 -2
  306. package/_cjs/optics/At/api.cjs.map +1 -1
  307. package/_cjs/optics/At/definition.cjs +1 -2
  308. package/_cjs/optics/At/definition.cjs.map +1 -1
  309. package/_cjs/optics/Index/api.cjs +3 -4
  310. package/_cjs/optics/Index/api.cjs.map +1 -1
  311. package/_cjs/optics/Iso/api.cjs +1 -2
  312. package/_cjs/optics/Iso/api.cjs.map +1 -1
  313. package/_cjs/optics/Iso/definition.cjs +1 -2
  314. package/_cjs/optics/Iso/definition.cjs.map +1 -1
  315. package/_cjs/optics/Lens/api.cjs +2 -3
  316. package/_cjs/optics/Lens/api.cjs.map +1 -1
  317. package/_cjs/optics/Lens/definition.cjs +1 -2
  318. package/_cjs/optics/Lens/definition.cjs.map +1 -1
  319. package/_cjs/optics/Optional/api/compose.cjs +1 -2
  320. package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
  321. package/_cjs/optics/Optional/api/focus.cjs +1 -2
  322. package/_cjs/optics/Optional/api/focus.cjs.map +1 -1
  323. package/_cjs/optics/Optional/api.cjs +1 -2
  324. package/_cjs/optics/Optional/api.cjs.map +1 -1
  325. package/_cjs/optics/Optional/definition.cjs +1 -2
  326. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  327. package/_cjs/optics/Prism/api/compose.cjs +1 -2
  328. package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
  329. package/_cjs/optics/Prism/api/focus.cjs +1 -2
  330. package/_cjs/optics/Prism/api/focus.cjs.map +1 -1
  331. package/_cjs/optics/Prism/api/fromNullable.cjs +1 -2
  332. package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
  333. package/_cjs/optics/Prism/api/just.cjs +1 -2
  334. package/_cjs/optics/Prism/api/just.cjs.map +1 -1
  335. package/_cjs/optics/Prism/definition.cjs +1 -2
  336. package/_cjs/optics/Prism/definition.cjs.map +1 -1
  337. package/_cjs/optics/Traversal/api/compose.cjs +1 -2
  338. package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
  339. package/_cjs/optics/Traversal/api/focus.cjs +1 -2
  340. package/_cjs/optics/Traversal/api/focus.cjs.map +1 -1
  341. package/_cjs/optics/Traversal/api/fromTraversable.cjs +1 -2
  342. package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
  343. package/_cjs/optics/Traversal/definition.cjs +1 -2
  344. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  345. package/_cjs/optics.cjs +0 -4
  346. package/_cjs/typeclass/ApplicativeExcept.cjs +1 -2
  347. package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
  348. package/_cjs/typeclass/Apply.cjs +1 -14
  349. package/_cjs/typeclass/Apply.cjs.map +1 -1
  350. package/_cjs/typeclass/Chain.cjs +1 -2
  351. package/_cjs/typeclass/Chain.cjs.map +1 -1
  352. package/_cjs/typeclass/Fail.cjs +0 -4
  353. package/_cjs/typeclass/MonadExcept.cjs +1 -2
  354. package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
  355. package/_cjs/typeclass/Monoid.cjs +1 -2
  356. package/_cjs/typeclass/Monoid.cjs.map +1 -1
  357. package/_cjs/typeclass/Nil.cjs +0 -4
  358. package/_cjs/typeclass/Semialign.cjs +1 -2
  359. package/_cjs/typeclass/Semialign.cjs.map +1 -1
  360. package/_cjs/typeclass/Semigroup/api.cjs +1 -2
  361. package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
  362. package/_cjs/typeclass/Semigroup/derivations.cjs +1 -2
  363. package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
  364. package/_cjs/typeclass/Witherable.cjs +1 -2
  365. package/_cjs/typeclass/Witherable.cjs.map +1 -1
  366. package/_cjs/typeclass/WitherableWithIndex.cjs +1 -2
  367. package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
  368. package/_cjs/typeclass/builtin/Symbol.cjs +0 -4
  369. package/_cjs/types/extractions.cjs +0 -4
  370. package/_cjs/types/utility.cjs +0 -4
  371. package/_cjs/util/AnsiFormat.cjs +1 -2
  372. package/_cjs/util/AnsiFormat.cjs.map +1 -1
  373. package/_cjs/util/assert.cjs +1 -1
  374. package/_cjs/util/assert.cjs.map +1 -1
  375. package/_cjs/util/pattern.cjs.map +1 -1
  376. package/_cjs/util/rand/distribution/Distribution.cjs +0 -4
  377. package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
  378. package/_cjs/util.cjs +0 -4
  379. package/_mjs/collection/AsyncIterable/api.mjs +366 -0
  380. package/_mjs/collection/AsyncIterable/api.mjs.map +1 -0
  381. package/_mjs/collection/AsyncIterable/definition.mjs +2 -0
  382. package/_mjs/collection/AsyncIterable/definition.mjs.map +1 -0
  383. package/_mjs/collection/AsyncIterable.mjs +4 -0
  384. package/_mjs/collection/AsyncIterable.mjs.map +1 -0
  385. package/_mjs/collection/Iterable/api.mjs +175 -134
  386. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  387. package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
  388. package/_mjs/collection/compat/ArrayLike/definition.mjs +1 -1
  389. package/_mjs/collection/compat/Map/definition.mjs +1 -1
  390. package/_mjs/collection/compat/Set/definition.mjs +1 -1
  391. package/_mjs/collection/compat.mjs +1 -1
  392. package/_mjs/collection/immutable/Conc/constructors.mjs +2 -2
  393. package/_mjs/collection/immutable/Conc/constructors.mjs.map +1 -1
  394. package/_mjs/collection/immutable/Conc/definition.mjs +1 -1
  395. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  396. package/_mjs/collection/immutable/List/api.mjs +2 -2
  397. package/_mjs/collection/immutable/List/api.mjs.map +1 -1
  398. package/_mjs/collection/immutable/{ImmutableArray → ReadonlyArray}/api/chunksOf.mjs +3 -3
  399. package/_mjs/collection/immutable/ReadonlyArray/api/chunksOf.mjs.map +1 -0
  400. package/_mjs/collection/immutable/ReadonlyArray/api/splitAt.mjs +9 -0
  401. package/_mjs/collection/immutable/ReadonlyArray/api/splitAt.mjs.map +1 -0
  402. package/_mjs/collection/immutable/ReadonlyArray/api/splitWhere.mjs +19 -0
  403. package/_mjs/collection/immutable/ReadonlyArray/api/splitWhere.mjs.map +1 -0
  404. package/_mjs/collection/immutable/ReadonlyArray/api.mjs +1302 -0
  405. package/_mjs/collection/immutable/ReadonlyArray/api.mjs.map +1 -0
  406. package/_mjs/collection/immutable/ReadonlyArray/constructors.mjs +44 -0
  407. package/_mjs/collection/immutable/ReadonlyArray/constructors.mjs.map +1 -0
  408. package/_mjs/collection/immutable/ReadonlyArray/definition.mjs.map +1 -0
  409. package/_mjs/collection/immutable/{ImmutableArray → ReadonlyArray}/instances.mjs +4 -5
  410. package/_mjs/collection/immutable/ReadonlyArray/instances.mjs.map +1 -0
  411. package/_mjs/collection/immutable/ReadonlyArray.mjs +11 -0
  412. package/_mjs/collection/immutable/ReadonlyArray.mjs.map +1 -0
  413. package/_mjs/collection/immutable/ReadonlyNonEmptyArray/api.mjs +433 -0
  414. package/_mjs/collection/immutable/ReadonlyNonEmptyArray/api.mjs.map +1 -0
  415. package/_mjs/collection/immutable/{ImmutableNonEmptyArray → ReadonlyNonEmptyArray}/constructors.mjs +16 -15
  416. package/_mjs/collection/immutable/ReadonlyNonEmptyArray/constructors.mjs.map +1 -0
  417. package/_mjs/collection/immutable/ReadonlyNonEmptyArray/definition.mjs +2 -0
  418. package/_mjs/collection/immutable/ReadonlyNonEmptyArray/definition.mjs.map +1 -0
  419. package/_mjs/collection/immutable/ReadonlyNonEmptyArray/destructors.mjs +41 -0
  420. package/_mjs/collection/immutable/ReadonlyNonEmptyArray/destructors.mjs.map +1 -0
  421. package/_mjs/collection/immutable/{ImmutableNonEmptyArray → ReadonlyNonEmptyArray}/instances.mjs +2 -2
  422. package/_mjs/collection/immutable/ReadonlyNonEmptyArray/instances.mjs.map +1 -0
  423. package/_mjs/collection/immutable/ReadonlyNonEmptyArray.mjs +7 -0
  424. package/_mjs/collection/immutable/ReadonlyNonEmptyArray.mjs.map +1 -0
  425. package/_mjs/collection/immutable/Vector/api.mjs +224 -224
  426. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  427. package/_mjs/collection/immutable.mjs +1 -1
  428. package/_mjs/collection/internal.mjs +1 -1
  429. package/_mjs/collection/mutable.mjs +1 -1
  430. package/_mjs/collection/weak.mjs +1 -1
  431. package/_mjs/collection.mjs +1 -1
  432. package/_mjs/control/Eval/api.mjs +83 -15
  433. package/_mjs/control/Eval/api.mjs.map +1 -1
  434. package/_mjs/control/Eval/constructors.mjs +4 -0
  435. package/_mjs/control/Eval/constructors.mjs.map +1 -1
  436. package/_mjs/control/Pure/runtime.mjs +14 -8
  437. package/_mjs/control/Pure/runtime.mjs.map +1 -1
  438. package/_mjs/control.mjs +1 -1
  439. package/_mjs/data/Byte.mjs +1 -1
  440. package/_mjs/data/CaseClass.mjs +10 -12
  441. package/_mjs/data/CaseClass.mjs.map +1 -1
  442. package/_mjs/data/Cause/api/fold.mjs +32 -32
  443. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  444. package/_mjs/data/Const/api.mjs +7 -7
  445. package/_mjs/data/Const/api.mjs.map +1 -1
  446. package/_mjs/data/Const/instances.mjs +11 -11
  447. package/_mjs/data/Const/instances.mjs.map +1 -1
  448. package/_mjs/data/Date/definition.mjs +1 -1
  449. package/_mjs/data/Datum/api.mjs +107 -108
  450. package/_mjs/data/Datum/api.mjs.map +1 -1
  451. package/_mjs/data/Datum.mjs +5 -0
  452. package/_mjs/data/Datum.mjs.map +1 -0
  453. package/_mjs/data/DatumEither/api.mjs +53 -53
  454. package/_mjs/data/DatumEither/api.mjs.map +1 -1
  455. package/_mjs/data/Either/api.mjs +42 -42
  456. package/_mjs/data/Either/api.mjs.map +1 -1
  457. package/_mjs/data/Either/constructors.mjs +20 -20
  458. package/_mjs/data/Either/constructors.mjs.map +1 -1
  459. package/_mjs/data/EitherT/api.mjs +27 -27
  460. package/_mjs/data/EitherT/api.mjs.map +1 -1
  461. package/_mjs/data/Environment/api.mjs.map +1 -1
  462. package/_mjs/data/EnvironmentPatch.mjs +1 -1
  463. package/_mjs/data/Eq/api.mjs +175 -3
  464. package/_mjs/data/Eq/api.mjs.map +1 -1
  465. package/_mjs/data/Eq/derivations.mjs +8 -19
  466. package/_mjs/data/Eq/derivations.mjs.map +1 -1
  467. package/_mjs/data/Exit/api.mjs +88 -78
  468. package/_mjs/data/Exit/api.mjs.map +1 -1
  469. package/_mjs/data/Guard/api.mjs +12 -15
  470. package/_mjs/data/Guard/api.mjs.map +1 -1
  471. package/_mjs/data/Maybe/api.mjs +71 -58
  472. package/_mjs/data/Maybe/api.mjs.map +1 -1
  473. package/_mjs/data/Maybe/constructors.mjs +36 -36
  474. package/_mjs/data/Maybe/constructors.mjs.map +1 -1
  475. package/_mjs/data/Predicate/definition.mjs +1 -1
  476. package/_mjs/data/Predicate/match.mjs +1 -1
  477. package/_mjs/data/Refinement/definition.mjs +1 -1
  478. package/_mjs/data/Showable/util.mjs.map +1 -1
  479. package/_mjs/data/Struct/api.mjs +4 -5
  480. package/_mjs/data/Struct/api.mjs.map +1 -1
  481. package/_mjs/data/These/api.mjs +85 -85
  482. package/_mjs/data/These/api.mjs.map +1 -1
  483. package/_mjs/data/bigint/definition.mjs +1 -1
  484. package/_mjs/data/boolean/definition.mjs +1 -1
  485. package/_mjs/data/exceptions/RuntimeError.mjs +1 -1
  486. package/_mjs/data/function/definition.mjs +1 -1
  487. package/_mjs/data/number/definition.mjs +1 -1
  488. package/_mjs/data/object/definition.mjs +1 -1
  489. package/_mjs/data/string/definition.mjs +1 -1
  490. package/_mjs/data.mjs +1 -1
  491. package/_mjs/global.mjs +1 -1
  492. package/_mjs/index.mjs +1 -1
  493. package/_mjs/internal/Stack.mjs +7 -2
  494. package/_mjs/internal/Stack.mjs.map +1 -1
  495. package/_mjs/json.mjs +1 -1
  496. package/_mjs/optics/Index/api.mjs +2 -2
  497. package/_mjs/optics/Index/api.mjs.map +1 -1
  498. package/_mjs/optics/Lens/api.mjs +1 -1
  499. package/_mjs/optics.mjs +1 -1
  500. package/_mjs/typeclass/Apply.mjs +0 -12
  501. package/_mjs/typeclass/Apply.mjs.map +1 -1
  502. package/_mjs/typeclass/Fail.mjs +1 -1
  503. package/_mjs/typeclass/Nil.mjs +1 -1
  504. package/_mjs/typeclass/builtin/Symbol.mjs +1 -1
  505. package/_mjs/types/extractions.mjs +1 -1
  506. package/_mjs/types/utility.mjs +1 -1
  507. package/_mjs/util/assert.mjs +1 -1
  508. package/_mjs/util/assert.mjs.map +1 -1
  509. package/_mjs/util/pattern.mjs.map +1 -1
  510. package/_mjs/util/rand/distribution/Distribution.mjs +1 -1
  511. package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
  512. package/_mjs/util.mjs +1 -1
  513. package/_src/collection/AsyncIterable/api.ts +369 -0
  514. package/_src/collection/AsyncIterable/definition.ts +7 -0
  515. package/_src/collection/AsyncIterable.ts +4 -0
  516. package/_src/collection/Iterable/api.ts +215 -162
  517. package/_src/collection/Iterable/constructors.ts +0 -2
  518. package/_src/collection/compat/ArrayLike/definition.ts +2 -2
  519. package/_src/collection/compat.ts +0 -1
  520. package/_src/collection/immutable/Conc/constructors.ts +1 -2
  521. package/_src/collection/immutable/Conc/definition.ts +7 -6
  522. package/_src/collection/immutable/List/api.ts +2 -2
  523. package/_src/collection/immutable/ReadonlyArray/api/chunksOf.ts +8 -0
  524. package/_src/collection/immutable/ReadonlyArray/api/splitAt.ts +8 -0
  525. package/_src/collection/immutable/{ImmutableArray → ReadonlyArray}/api/splitWhere.ts +3 -3
  526. package/_src/collection/immutable/ReadonlyArray/api.ts +1536 -0
  527. package/_src/collection/immutable/ReadonlyArray/constructors.ts +47 -0
  528. package/_src/collection/{compat/Array → immutable/ReadonlyArray}/definition.ts +8 -0
  529. package/_src/collection/immutable/{ImmutableArray → ReadonlyArray}/instances.ts +22 -22
  530. package/_src/collection/immutable/ReadonlyArray.ts +12 -0
  531. package/_src/collection/immutable/ReadonlyNonEmptyArray/api.ts +481 -0
  532. package/_src/collection/immutable/ReadonlyNonEmptyArray/constructors.ts +76 -0
  533. package/_src/collection/immutable/ReadonlyNonEmptyArray/definition.ts +22 -0
  534. package/_src/collection/immutable/ReadonlyNonEmptyArray/destructors.ts +41 -0
  535. package/_src/collection/immutable/{ImmutableNonEmptyArray → ReadonlyNonEmptyArray}/instances.ts +13 -13
  536. package/_src/collection/immutable/ReadonlyNonEmptyArray.ts +7 -0
  537. package/_src/collection/immutable/Vector/api.ts +310 -309
  538. package/_src/collection/immutable.ts +11 -11
  539. package/_src/collection.ts +6 -5
  540. package/_src/control/Eval/api.ts +109 -16
  541. package/_src/control/Eval/constructors.ts +5 -0
  542. package/_src/control/Pure/runtime.ts +8 -2
  543. package/_src/data/CaseClass.ts +5 -5
  544. package/_src/data/Cause/api/fold.ts +2 -2
  545. package/_src/data/Const/api.ts +8 -8
  546. package/_src/data/Const/instances.ts +10 -10
  547. package/_src/data/Datum/api.ts +113 -113
  548. package/_src/data/Datum.ts +5 -0
  549. package/_src/data/DatumEither/api.ts +41 -43
  550. package/_src/data/Either/api.ts +47 -47
  551. package/_src/data/Either/constructors.ts +14 -16
  552. package/_src/data/EitherT/api.ts +111 -110
  553. package/_src/data/Environment/api.ts +6 -3
  554. package/_src/data/Eq/api.ts +193 -4
  555. package/_src/data/Eq/derivations.ts +12 -19
  556. package/_src/data/Exit/api.ts +89 -77
  557. package/_src/data/Guard/api.ts +11 -11
  558. package/_src/data/Maybe/api.ts +82 -73
  559. package/_src/data/Maybe/constructors.ts +34 -36
  560. package/_src/data/Showable/util.ts +1 -1
  561. package/_src/data/Struct/api.ts +1 -1
  562. package/_src/data/These/api.ts +93 -92
  563. package/_src/data.ts +1 -0
  564. package/_src/global.ts +7 -12
  565. package/_src/internal/Stack.ts +6 -2
  566. package/_src/optics/Index/api.ts +1 -1
  567. package/_src/typeclass/Apply.ts +6 -18
  568. package/_src/util/assert.ts +2 -2
  569. package/_src/util/pattern.ts +8 -90
  570. package/_src/util/rand/generator/RandomGenerator.ts +1 -0
  571. package/collection/AsyncIterable/api.d.ts +71 -0
  572. package/collection/AsyncIterable/definition.d.ts +9 -0
  573. package/collection/AsyncIterable.d.ts +2 -0
  574. package/collection/Iterable/api/traverseConc.d.ts +1 -1
  575. package/collection/Iterable/api.d.ts +40 -25
  576. package/collection/compat/ArrayLike/definition.d.ts +2 -2
  577. package/collection/compat.d.ts +0 -1
  578. package/collection/immutable/Conc/definition.d.ts +1 -1
  579. package/collection/immutable/ReadonlyArray/api/chunksOf.d.ts +5 -0
  580. package/collection/immutable/ReadonlyArray/api/splitAt.d.ts +5 -0
  581. package/collection/immutable/ReadonlyArray/api/splitWhere.d.ts +6 -0
  582. package/collection/immutable/ReadonlyArray/api.d.ts +614 -0
  583. package/collection/immutable/ReadonlyArray/constructors.d.ts +30 -0
  584. package/collection/{compat/Array → immutable/ReadonlyArray}/definition.d.ts +8 -0
  585. package/collection/immutable/ReadonlyArray/instances.d.ts +87 -0
  586. package/collection/immutable/ReadonlyArray.d.ts +7 -0
  587. package/collection/immutable/ReadonlyNonEmptyArray/api.d.ts +186 -0
  588. package/collection/immutable/ReadonlyNonEmptyArray/constructors.d.ts +45 -0
  589. package/collection/immutable/ReadonlyNonEmptyArray/definition.d.ts +21 -0
  590. package/collection/immutable/ReadonlyNonEmptyArray/destructors.d.ts +31 -0
  591. package/collection/immutable/ReadonlyNonEmptyArray/instances.d.ts +52 -0
  592. package/collection/immutable/ReadonlyNonEmptyArray.d.ts +5 -0
  593. package/collection/immutable/Vector/api.d.ts +93 -93
  594. package/collection/immutable.d.ts +2 -2
  595. package/collection.d.ts +1 -0
  596. package/control/Eval/api.d.ts +27 -5
  597. package/control/Eval/constructors.d.ts +5 -0
  598. package/data/CaseClass.d.ts +2 -3
  599. package/data/Const/api.d.ts +5 -5
  600. package/data/Const/instances.d.ts +4 -4
  601. package/data/Datum/api.d.ts +64 -64
  602. package/data/Datum.d.ts +3 -0
  603. package/data/DatumEither/api.d.ts +25 -25
  604. package/data/Either/api.d.ts +24 -24
  605. package/data/Either/constructors.d.ts +12 -12
  606. package/data/EitherT/api.d.ts +16 -16
  607. package/data/Environment/api.d.ts +4 -2
  608. package/data/Eq/api.d.ts +89 -2
  609. package/data/Eq/derivations.d.ts +7 -0
  610. package/data/Exit/api.d.ts +43 -37
  611. package/data/Guard/api.d.ts +7 -8
  612. package/data/Maybe/api.d.ts +38 -33
  613. package/data/Maybe/constructors.d.ts +16 -16
  614. package/data/Showable/util.d.ts +1 -1
  615. package/data/These/api.d.ts +26 -26
  616. package/data.d.ts +1 -0
  617. package/global.d.ts +4 -8
  618. package/internal/Stack.d.ts +2 -0
  619. package/optics/Lens/api.d.ts +1 -1
  620. package/optics/Traversal/api/fromTraversable.d.ts +1 -1
  621. package/package.json +3 -3
  622. package/typeclass/Apply.d.ts +0 -6
  623. package/util/assert.d.ts +1 -1
  624. package/_cjs/collection/compat/Array/api.cjs +0 -142
  625. package/_cjs/collection/compat/Array/api.cjs.map +0 -1
  626. package/_cjs/collection/compat/Array/definition.cjs.map +0 -1
  627. package/_cjs/collection/compat/Array.cjs.map +0 -1
  628. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs +0 -19
  629. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +0 -1
  630. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs +0 -18
  631. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +0 -1
  632. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs +0 -18
  633. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +0 -1
  634. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs +0 -28
  635. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +0 -1
  636. package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +0 -1
  637. package/_cjs/collection/immutable/ImmutableArray/constructors.cjs +0 -59
  638. package/_cjs/collection/immutable/ImmutableArray/constructors.cjs.map +0 -1
  639. package/_cjs/collection/immutable/ImmutableArray/definition.cjs +0 -44
  640. package/_cjs/collection/immutable/ImmutableArray/definition.cjs.map +0 -1
  641. package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +0 -1
  642. package/_cjs/collection/immutable/ImmutableArray.cjs.map +0 -1
  643. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs +0 -474
  644. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +0 -1
  645. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs +0 -79
  646. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +0 -1
  647. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs +0 -36
  648. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +0 -1
  649. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs +0 -53
  650. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +0 -1
  651. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +0 -1
  652. package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs.map +0 -1
  653. package/_cjs/control/Eval/api/sequenceArray.cjs +0 -17
  654. package/_cjs/control/Eval/api/sequenceArray.cjs.map +0 -1
  655. package/_mjs/collection/compat/Array/api.mjs +0 -125
  656. package/_mjs/collection/compat/Array/api.mjs.map +0 -1
  657. package/_mjs/collection/compat/Array/definition.mjs.map +0 -1
  658. package/_mjs/collection/compat/Array.mjs +0 -4
  659. package/_mjs/collection/compat/Array.mjs.map +0 -1
  660. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +0 -1
  661. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +0 -10
  662. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +0 -1
  663. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +0 -10
  664. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +0 -1
  665. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +0 -20
  666. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +0 -1
  667. package/_mjs/collection/immutable/ImmutableArray/api.mjs +0 -1284
  668. package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +0 -1
  669. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs +0 -46
  670. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs.map +0 -1
  671. package/_mjs/collection/immutable/ImmutableArray/definition.mjs +0 -35
  672. package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +0 -1
  673. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +0 -1
  674. package/_mjs/collection/immutable/ImmutableArray.mjs +0 -12
  675. package/_mjs/collection/immutable/ImmutableArray.mjs.map +0 -1
  676. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +0 -437
  677. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +0 -1
  678. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +0 -1
  679. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs +0 -25
  680. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +0 -1
  681. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +0 -43
  682. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +0 -1
  683. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +0 -1
  684. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs +0 -7
  685. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs.map +0 -1
  686. package/_mjs/control/Eval/api/sequenceArray.mjs +0 -9
  687. package/_mjs/control/Eval/api/sequenceArray.mjs.map +0 -1
  688. package/_src/collection/compat/Array/api.ts +0 -134
  689. package/_src/collection/compat/Array.ts +0 -4
  690. package/_src/collection/immutable/ImmutableArray/api/chunksOf.ts +0 -8
  691. package/_src/collection/immutable/ImmutableArray/api/slice.ts +0 -8
  692. package/_src/collection/immutable/ImmutableArray/api/splitAt.ts +0 -8
  693. package/_src/collection/immutable/ImmutableArray/api.ts +0 -1526
  694. package/_src/collection/immutable/ImmutableArray/constructors.ts +0 -47
  695. package/_src/collection/immutable/ImmutableArray/definition.ts +0 -48
  696. package/_src/collection/immutable/ImmutableArray.ts +0 -13
  697. package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +0 -483
  698. package/_src/collection/immutable/ImmutableNonEmptyArray/constructors.ts +0 -83
  699. package/_src/collection/immutable/ImmutableNonEmptyArray/definition.ts +0 -47
  700. package/_src/collection/immutable/ImmutableNonEmptyArray/destructors.ts +0 -41
  701. package/_src/collection/immutable/ImmutableNonEmptyArray.ts +0 -7
  702. package/_src/control/Eval/api/sequenceArray.ts +0 -6
  703. package/collection/compat/Array/api.d.ts +0 -62
  704. package/collection/compat/Array.d.ts +0 -2
  705. package/collection/immutable/ImmutableArray/api/chunksOf.d.ts +0 -6
  706. package/collection/immutable/ImmutableArray/api/slice.d.ts +0 -6
  707. package/collection/immutable/ImmutableArray/api/splitAt.d.ts +0 -6
  708. package/collection/immutable/ImmutableArray/api/splitWhere.d.ts +0 -7
  709. package/collection/immutable/ImmutableArray/api.d.ts +0 -602
  710. package/collection/immutable/ImmutableArray/constructors.d.ts +0 -32
  711. package/collection/immutable/ImmutableArray/definition.d.ts +0 -34
  712. package/collection/immutable/ImmutableArray/instances.d.ts +0 -87
  713. package/collection/immutable/ImmutableArray.d.ts +0 -8
  714. package/collection/immutable/ImmutableNonEmptyArray/api.d.ts +0 -186
  715. package/collection/immutable/ImmutableNonEmptyArray/constructors.d.ts +0 -46
  716. package/collection/immutable/ImmutableNonEmptyArray/definition.d.ts +0 -40
  717. package/collection/immutable/ImmutableNonEmptyArray/destructors.d.ts +0 -32
  718. package/collection/immutable/ImmutableNonEmptyArray/instances.d.ts +0 -52
  719. package/collection/immutable/ImmutableNonEmptyArray.d.ts +0 -5
  720. package/control/Eval/api/sequenceArray.d.ts +0 -6
  721. /package/_cjs/collection/{compat/Array → immutable/ReadonlyArray}/definition.cjs +0 -0
  722. /package/_mjs/collection/{compat/Array → immutable/ReadonlyArray}/definition.mjs +0 -0
@@ -1,7 +1,16 @@
1
1
  import type * as P from "@fncts/base/typeclass";
2
2
 
3
- import { Iterable } from "@fncts/base/collection/Iterable/definition";
4
3
  import { tuple } from "@fncts/base/data/function";
4
+ import { isNumber } from "@fncts/base/util/predicates";
5
+
6
+ type PartitionHandleResult<A> =
7
+ | {
8
+ emit: true;
9
+ value: A;
10
+ }
11
+ | {
12
+ emit: false;
13
+ };
5
14
 
6
15
  /**
7
16
  * @tsplus pipeable fncts.Iterable ap
@@ -48,73 +57,6 @@ export function append<B>(b: B) {
48
57
  };
49
58
  }
50
59
 
51
- /**
52
- * @tsplus getter fncts.Iterable toIterable
53
- */
54
- export function toIterable<A>(self: Iterable<A>): Iterable<A> {
55
- return self;
56
- }
57
-
58
- /**
59
- * @tsplus getter fncts.Iterable toArray
60
- */
61
- export function toArray<A>(self: Iterable<A>): Array<A> {
62
- return Array.from(self);
63
- }
64
-
65
- /**
66
- * @tsplus pipeable fncts.Iterable flatMap
67
- */
68
- export function flatMap<A, B>(f: (a: A) => Iterable<B>) {
69
- return (self: Iterable<A>): Iterable<B> => {
70
- return Iterable.make<B>(() => {
71
- const ia = self[Symbol.iterator]();
72
- let ib: Iterator<B>;
73
- let va: IteratorResult<A>;
74
- let vb: IteratorResult<B>;
75
- let done = false;
76
- const pullA = (onDone: () => IteratorResult<B>): IteratorResult<B> => {
77
- va = ia.next();
78
- if (va.done) {
79
- return onDone();
80
- }
81
- ib = f(va.value)[Symbol.iterator]();
82
- return pullB(onDone);
83
- };
84
- const pullB = (onDone: () => IteratorResult<B>): IteratorResult<B> => {
85
- if (!ib) {
86
- return pullA(onDone);
87
- }
88
- vb = ib!.next();
89
- if (!vb.done) {
90
- return { done, value: vb.value };
91
- }
92
- return pullA(onDone);
93
- };
94
- return {
95
- next() {
96
- if (done) {
97
- return this.return!();
98
- }
99
- return pullB(() => this.return!());
100
- },
101
- return(value?: unknown) {
102
- if (!done) {
103
- done = true;
104
- if (typeof ia.return === "function") {
105
- ia.return();
106
- }
107
- if (ib && typeof ib.return === "function") {
108
- ib.return();
109
- }
110
- }
111
- return { done, value };
112
- },
113
- };
114
- });
115
- };
116
- }
117
-
118
60
  /**
119
61
  * @tsplus pipeable fncts.Iterable concat
120
62
  */
@@ -315,6 +257,7 @@ export function filterWithIndex<A>(p: PredicateWithIndex<number, A>) {
315
257
  */
316
258
  export function find<A, B extends A>(refinement: Refinement<A, B>): (self: Iterable<A>) => Maybe<B>;
317
259
  export function find<A>(predicate: Predicate<A>): (self: Iterable<A>) => Maybe<A>;
260
+
318
261
  export function find<A>(predicate: Predicate<A>) {
319
262
  return (self: Iterable<A>): Maybe<A> => {
320
263
  for (const value of self) {
@@ -342,6 +285,68 @@ export function findIndex<A>(p: Predicate<A>) {
342
285
  };
343
286
  }
344
287
 
288
+ /**
289
+ * @tsplus pipeable fncts.Iterable flatMap
290
+ */
291
+ export function flatMap<A, B>(f: (a: A) => Iterable<B>) {
292
+ return (self: Iterable<A>): Iterable<B> => {
293
+ return Iterable.make<B>(() => {
294
+ const ia = self[Symbol.iterator]();
295
+ let ib: Iterator<B>;
296
+ let va: IteratorResult<A>;
297
+ let vb: IteratorResult<B>;
298
+ let done = false;
299
+ const pullA = (onDone: () => IteratorResult<B>): IteratorResult<B> => {
300
+ va = ia.next();
301
+ if (va.done) {
302
+ return onDone();
303
+ }
304
+ ib = f(va.value)[Symbol.iterator]();
305
+ return pullB(onDone);
306
+ };
307
+ const pullB = (onDone: () => IteratorResult<B>): IteratorResult<B> => {
308
+ if (!ib) {
309
+ return pullA(onDone);
310
+ }
311
+ vb = ib!.next();
312
+ if (!vb.done) {
313
+ return { done, value: vb.value };
314
+ }
315
+ return pullA(onDone);
316
+ };
317
+ return {
318
+ next() {
319
+ if (done) {
320
+ return this.return!();
321
+ }
322
+ return pullB(() => this.return!());
323
+ },
324
+ return(value?: unknown) {
325
+ if (!done) {
326
+ done = true;
327
+ if (typeof ia.return === "function") {
328
+ ia.return();
329
+ }
330
+ if (ib && typeof ib.return === "function") {
331
+ ib.return();
332
+ }
333
+ }
334
+ return { done, value };
335
+ },
336
+ };
337
+ });
338
+ };
339
+ }
340
+
341
+ /**
342
+ * @tsplus pipeable fncts.Iterable foldLeft
343
+ */
344
+ export function foldLeft<A, B>(b: B, f: (b: B, a: A) => B) {
345
+ return (self: Iterable<A>): B => {
346
+ return self.foldLeftWithIndex(b, (_, b, a) => f(b, a));
347
+ };
348
+ }
349
+
345
350
  /**
346
351
  * @tsplus pipeable fncts.Iterable foldLeftWithIndex
347
352
  */
@@ -357,15 +362,6 @@ export function foldLeftWithIndex<A, B>(b: B, f: (i: number, b: B, a: A) => B) {
357
362
  };
358
363
  }
359
364
 
360
- /**
361
- * @tsplus pipeable fncts.Iterable foldLeft
362
- */
363
- export function foldLeft<A, B>(b: B, f: (b: B, a: A) => B) {
364
- return (self: Iterable<A>): B => {
365
- return self.foldLeftWithIndex(b, (_, b, a) => f(b, a));
366
- };
367
- }
368
-
369
365
  /**
370
366
  * @tsplus pipeable fncts.Iterable foldMap
371
367
  */
@@ -390,6 +386,15 @@ export function foldMapWithIndex<A, M>(f: (i: number, a: A) => M, /** @tsplus au
390
386
  };
391
387
  }
392
388
 
389
+ /**
390
+ * @tsplus pipeable fncts.Iterable foldRight
391
+ */
392
+ export function foldRight<A, B>(b: Eval<B>, f: (a: A, b: Eval<B>) => Eval<B>) {
393
+ return (self: Iterable<A>): Eval<B> => {
394
+ return self.foldRightWithIndex(b, (_, a, b) => f(a, b));
395
+ };
396
+ }
397
+
393
398
  /**
394
399
  * @tsplus pipeable fncts.Iterable foldRightWithIndex
395
400
  */
@@ -409,13 +414,75 @@ export function foldRightWithIndex<A, B>(b: Eval<B>, f: (i: number, a: A, b: Eva
409
414
  };
410
415
  }
411
416
 
417
+ function handlePartition<A>(
418
+ predicate: PredicateWithIndex<number, A>,
419
+ i: number,
420
+ a: A,
421
+ h: boolean,
422
+ ): PartitionHandleResult<A> {
423
+ return h === predicate(i, a) ? { emit: true, value: a } : { emit: false };
424
+ }
425
+
426
+ function handlePartitionMap<A, B, C>(
427
+ f: (i: number, a: A) => Either<B, C>,
428
+ i: number,
429
+ a: A,
430
+ h: "Left" | "Right",
431
+ ): PartitionHandleResult<B | C> {
432
+ const bc = f(i, a);
433
+ Either.concrete(bc);
434
+ return h === "Left" && bc._tag === "Left"
435
+ ? { emit: true, value: bc.left }
436
+ : h === "Right" && bc._tag === "Right"
437
+ ? { emit: true, value: bc.right }
438
+ : { emit: false };
439
+ }
440
+
412
441
  /**
413
- * @tsplus pipeable fncts.Iterable foldRight
442
+ * @tsplus getter fncts.Iterable intrinsicSize
414
443
  */
415
- export function foldRight<A, B>(b: Eval<B>, f: (a: A, b: Eval<B>) => Eval<B>) {
416
- return (self: Iterable<A>): Eval<B> => {
417
- return self.foldRightWithIndex(b, (_, a, b) => f(a, b));
418
- };
444
+ export function intrinsicSize<A>(self: Iterable<A>): Maybe<number> {
445
+ if (self.hasProperty("size") && isNumber(self["size"])) {
446
+ return Just(self.size);
447
+ }
448
+
449
+ if (self.hasProperty("length") && isNumber(self["length"])) {
450
+ return Just(self.length);
451
+ }
452
+
453
+ return Nothing();
454
+ }
455
+
456
+ /**
457
+ * @tsplus getter fncts.Iterable isEmpty
458
+ */
459
+ export function isEmpty<A>(self: Iterable<A>): boolean {
460
+ return self.intrinsicSize.match(
461
+ () => {
462
+ for (const _ of self) {
463
+ return false;
464
+ }
465
+
466
+ return true;
467
+ },
468
+ (n) => n <= 0,
469
+ );
470
+ }
471
+
472
+ /**
473
+ * @tsplus getter fncts.Iterable isNonEmpty
474
+ */
475
+ export function isNonEmpty<A>(self: Iterable<A>): boolean {
476
+ return self.intrinsicSize.match(
477
+ () => {
478
+ for (const _ of self) {
479
+ return true;
480
+ }
481
+
482
+ return false;
483
+ },
484
+ (n) => n > 0,
485
+ );
419
486
  }
420
487
 
421
488
  /**
@@ -462,27 +529,38 @@ export function mapWithIndex<A, B>(f: (i: number, a: A) => B) {
462
529
  };
463
530
  }
464
531
 
465
- type PartitionHandleResult<A> =
466
- | {
467
- emit: true;
468
- value: A;
469
- }
470
- | {
471
- emit: false;
472
- };
473
- function handlePartitionMap<A, B, C>(
474
- f: (i: number, a: A) => Either<B, C>,
475
- i: number,
476
- a: A,
477
- h: "Left" | "Right",
478
- ): PartitionHandleResult<B | C> {
479
- const bc = f(i, a);
480
- Either.concrete(bc);
481
- return h === "Left" && bc._tag === "Left"
482
- ? { emit: true, value: bc.left }
483
- : h === "Right" && bc._tag === "Right"
484
- ? { emit: true, value: bc.right }
485
- : { emit: false };
532
+ /**
533
+ * @tsplus pipeable fncts.Iterable partition
534
+ */
535
+ export function partition<A, B extends A>(
536
+ p: Refinement<A, B>,
537
+ ): (self: Iterable<A>) => readonly [Iterable<A>, Iterable<B>];
538
+ export function partition<A>(p: Predicate<A>): (self: Iterable<A>) => readonly [Iterable<A>, Iterable<A>];
539
+ export function partition<A>(p: Predicate<A>) {
540
+ return (self: Iterable<A>): readonly [Iterable<A>, Iterable<A>] => {
541
+ return self.partitionWithIndex((_, a) => p(a));
542
+ };
543
+ }
544
+
545
+ /**
546
+ * @tsplus pipeable fncts.Iterable partitionMap
547
+ */
548
+ export function partitionMap<A, B, C>(f: (a: A) => Either<B, C>) {
549
+ return (self: Iterable<A>): readonly [Iterable<B>, Iterable<C>] => {
550
+ return self.partitionMapWithIndex((_, a) => f(a));
551
+ };
552
+ }
553
+
554
+ /**
555
+ * @tsplus pipeable fncts.Iterable partitionMapWithIndex
556
+ */
557
+ export function partitionMapWithIndex<A, B, C>(f: (i: number, a: A) => Either<B, C>) {
558
+ return (self: Iterable<A>): readonly [Iterable<B>, Iterable<C>] => {
559
+ return tuple(
560
+ Iterable.make(() => partitionMapWithIndexIterator(self, f, "Left")) as Iterable<B>,
561
+ Iterable.make(() => partitionMapWithIndexIterator(self, f, "Right")) as Iterable<C>,
562
+ );
563
+ };
486
564
  }
487
565
 
488
566
  function partitionMapWithIndexIterator<A, B, C>(
@@ -524,35 +602,23 @@ function partitionMapWithIndexIterator<A, B, C>(
524
602
  }
525
603
 
526
604
  /**
527
- * @tsplus pipeable fncts.Iterable partitionMap
528
- */
529
- export function partitionMap<A, B, C>(f: (a: A) => Either<B, C>) {
530
- return (self: Iterable<A>): readonly [Iterable<B>, Iterable<C>] => {
531
- return self.partitionMapWithIndex((_, a) => f(a));
532
- };
533
- }
534
-
535
- /**
536
- * @tsplus pipeable fncts.Iterable partitionMapWithIndex
605
+ * @tsplus pipeable fncts.Iterable partitionWithIndex
537
606
  */
538
- export function partitionMapWithIndex<A, B, C>(f: (i: number, a: A) => Either<B, C>) {
539
- return (self: Iterable<A>): readonly [Iterable<B>, Iterable<C>] => {
607
+ export function partitionWithIndex<A, B extends A>(
608
+ p: RefinementWithIndex<number, A, B>,
609
+ ): (self: Iterable<A>) => readonly [Iterable<A>, Iterable<B>];
610
+ export function partitionWithIndex<A>(
611
+ p: PredicateWithIndex<number, A>,
612
+ ): (self: Iterable<A>) => readonly [Iterable<A>, Iterable<A>];
613
+ export function partitionWithIndex<A>(p: PredicateWithIndex<number, A>) {
614
+ return (self: Iterable<A>): readonly [Iterable<A>, Iterable<A>] => {
540
615
  return tuple(
541
- Iterable.make(() => partitionMapWithIndexIterator(self, f, "Left")) as Iterable<B>,
542
- Iterable.make(() => partitionMapWithIndexIterator(self, f, "Right")) as Iterable<C>,
616
+ Iterable.make(() => partitionWithIndexIterator(self, p, false)),
617
+ Iterable.make(() => partitionWithIndexIterator(self, p, true)),
543
618
  );
544
619
  };
545
620
  }
546
621
 
547
- function handlePartition<A>(
548
- predicate: PredicateWithIndex<number, A>,
549
- i: number,
550
- a: A,
551
- h: boolean,
552
- ): PartitionHandleResult<A> {
553
- return h === predicate(i, a) ? { emit: true, value: a } : { emit: false };
554
- }
555
-
556
622
  function partitionWithIndexIterator<A>(
557
623
  self: Iterable<A>,
558
624
  predicate: PredicateWithIndex<number, A>,
@@ -591,37 +657,6 @@ function partitionWithIndexIterator<A>(
591
657
  };
592
658
  }
593
659
 
594
- /**
595
- * @tsplus pipeable fncts.Iterable partition
596
- */
597
- export function partition<A, B extends A>(
598
- p: Refinement<A, B>,
599
- ): (self: Iterable<A>) => readonly [Iterable<A>, Iterable<B>];
600
- export function partition<A>(p: Predicate<A>): (self: Iterable<A>) => readonly [Iterable<A>, Iterable<A>];
601
- export function partition<A>(p: Predicate<A>) {
602
- return (self: Iterable<A>): readonly [Iterable<A>, Iterable<A>] => {
603
- return self.partitionWithIndex((_, a) => p(a));
604
- };
605
- }
606
-
607
- /**
608
- * @tsplus pipeable fncts.Iterable partitionWithIndex
609
- */
610
- export function partitionWithIndex<A, B extends A>(
611
- p: RefinementWithIndex<number, A, B>,
612
- ): (self: Iterable<A>) => readonly [Iterable<A>, Iterable<B>];
613
- export function partitionWithIndex<A>(
614
- p: PredicateWithIndex<number, A>,
615
- ): (self: Iterable<A>) => readonly [Iterable<A>, Iterable<A>];
616
- export function partitionWithIndex<A>(p: PredicateWithIndex<number, A>) {
617
- return (self: Iterable<A>): readonly [Iterable<A>, Iterable<A>] => {
618
- return tuple(
619
- Iterable.make(() => partitionWithIndexIterator(self, p, false)),
620
- Iterable.make(() => partitionWithIndexIterator(self, p, true)),
621
- );
622
- };
623
- }
624
-
625
660
  /**
626
661
  * @tsplus static fncts.IterableOps replicate
627
662
  */
@@ -633,11 +668,15 @@ export function replicate<A>(n: number, a: A): Iterable<A> {
633
668
  * @tsplus getter fncts.Iterable size
634
669
  */
635
670
  export function size<A>(self: Iterable<A>): number {
636
- let len = 0;
637
- for (const _ of self) {
638
- len += 1;
639
- }
640
- return len;
671
+ return self.intrinsicSize.getOrElse(() => {
672
+ let len = 0;
673
+
674
+ for (const _ of self) {
675
+ len += 1;
676
+ }
677
+
678
+ return len;
679
+ });
641
680
  }
642
681
 
643
682
  /**
@@ -683,6 +722,20 @@ export function take(n: number) {
683
722
  };
684
723
  }
685
724
 
725
+ /**
726
+ * @tsplus getter fncts.Iterable toArray
727
+ */
728
+ export function toArray<A>(self: Iterable<A>): Array<A> {
729
+ return Array.from(self);
730
+ }
731
+
732
+ /**
733
+ * @tsplus getter fncts.Iterable toIterable
734
+ */
735
+ export function toIterable<A>(self: Iterable<A>): Iterable<A> {
736
+ return self;
737
+ }
738
+
686
739
  /**
687
740
  * @tsplus pipeable fncts.Iterable zipWith
688
741
  */
@@ -1,7 +1,5 @@
1
1
  import { Iterable } from "@fncts/base/collection/Iterable/definition";
2
2
 
3
- import {} from "./definition.js";
4
-
5
3
  /**
6
4
  * @tsplus static fncts.IterableOps make
7
5
  */
@@ -2,10 +2,10 @@ declare global {
2
2
  /**
3
3
  * @tsplus type fncts.ArrayLike
4
4
  */
5
- interface ArrayLike<T> {}
5
+ export interface ArrayLike<T> {}
6
6
 
7
7
  /**
8
8
  * @tsplus type fncts.ArrayLike
9
9
  */
10
- interface RelativeIndexable<T> {}
10
+ export interface RelativeIndexable<T> {}
11
11
  }
@@ -2,5 +2,4 @@
2
2
  // codegen:start { preset: type-barrel, include: ./compat/*.ts }
3
3
  export type {} from "./compat/Set.js";
4
4
  export type {} from "./compat/Map.js";
5
- export type {} from "./compat/Array.js";
6
5
  // codegen:end
@@ -1,4 +1,3 @@
1
- import { ImmutableArray } from "../ImmutableArray.js";
2
1
  import { ByteChunk, Chunk, Singleton } from "./definition.js";
3
2
 
4
3
  /**
@@ -27,7 +26,7 @@ export function make<A>(...as: ReadonlyArray<A>): Conc<A> {
27
26
  * @tsplus static fncts.ConcOps range
28
27
  */
29
28
  export function range(start: number, end: number): Conc<number> {
30
- return Conc.fromArray(ImmutableArray.range(start, end)._array);
29
+ return Conc.fromArray(Array.range(start, end));
31
30
  }
32
31
 
33
32
  /**
@@ -322,7 +322,9 @@ class AppendN<A> extends ConcImplementation<A> {
322
322
  }
323
323
 
324
324
  [Symbol.iterator](): Iterator<A> {
325
- return this.start.toIterable.concat(this.buffer.toIterable.take(this.bufferUsed))[Symbol.iterator]() as Iterator<A>;
325
+ return this.start.toIterable
326
+ .concat((<ArrayLike<A>>this.buffer).toIterable.take(this.bufferUsed))
327
+ [Symbol.iterator]();
326
328
  }
327
329
 
328
330
  append<A1>(a: A1): ConcImplementation<A | A1> {
@@ -382,7 +384,7 @@ class AppendN<A> extends ConcImplementation<A> {
382
384
  }
383
385
  }
384
386
 
385
- class PrependN<A> extends ConcImplementation<A> {
387
+ export class PrependN<A> extends ConcImplementation<A> {
386
388
  readonly _tag = ConcTag.PrependN;
387
389
 
388
390
  length: number;
@@ -405,10 +407,9 @@ class PrependN<A> extends ConcImplementation<A> {
405
407
  }
406
408
 
407
409
  [Symbol.iterator](): Iterator<A> {
408
- return this.buffer
409
- .slice(BUFFER_SIZE - this.bufferUsed, this.buffer.length)
410
- .toIterable.concat(this.end)
411
- [Symbol.iterator]() as Iterator<A>;
410
+ return (<ArrayLike<A>>this.buffer.slice(BUFFER_SIZE - this.bufferUsed, this.buffer.length)).toIterable
411
+ .concat(this.end)
412
+ [Symbol.iterator]();
412
413
  }
413
414
 
414
415
  prepend<A1>(a: A1): ConcImplementation<A | A1> {
@@ -353,7 +353,7 @@ export function unsafeLast<A>(self: List<A>): A {
353
353
  }
354
354
  let these = self;
355
355
  let scout = self.tail;
356
- while (!scout.isEmpty()) {
356
+ while (scout.isNonEmpty()) {
357
357
  these = scout;
358
358
  scout = scout.tail;
359
359
  }
@@ -363,7 +363,7 @@ export function unsafeLast<A>(self: List<A>): A {
363
363
  function copyToArrayWithIndex<A>(list: List<A>, arr: Array<[number, A]>): void {
364
364
  let these = list;
365
365
  let i = 0;
366
- while (!these.isEmpty()) {
366
+ while (these.isNonEmpty()) {
367
367
  arr[i] = [i, these.head];
368
368
  these = these.tail;
369
369
  i++;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @tsplus pipeable fncts.ReadonlyArray chunksOf
3
+ */
4
+ export function chunksOf(n: number) {
5
+ return <A>(self: ReadonlyArray<A>): ReadonlyArray<ReadonlyArray<A>> => {
6
+ return self.chop((as) => as.splitAt(n));
7
+ };
8
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @tsplus pipeable fncts.ReadonlyArray splitAt
3
+ */
4
+ export function splitAt(n: number) {
5
+ return <A>(as: ReadonlyArray<A>): readonly [ReadonlyArray<A>, ReadonlyArray<A>] => {
6
+ return [as.slice(0, n), as.slice(n)];
7
+ };
8
+ }
@@ -1,12 +1,12 @@
1
1
  /**
2
- * @tsplus pipeable fncts.ImmutableArray splitWhere
2
+ * @tsplus pipeable fncts.ReadonlyArray splitWhere
3
3
  */
4
4
  export function splitWhere<A>(p: Predicate<A>) {
5
- return (self: ImmutableArray<A>): readonly [ImmutableArray<A>, ImmutableArray<A>] => {
5
+ return (self: ReadonlyArray<A>): readonly [ReadonlyArray<A>, ReadonlyArray<A>] => {
6
6
  let cont = true;
7
7
  let i = 0;
8
8
  while (cont && i < self.length) {
9
- if (p(self._array[i]!)) {
9
+ if (p(self[i]!)) {
10
10
  cont = false;
11
11
  } else {
12
12
  i++;