@fncts/base 0.0.27 → 0.0.29

Sign up to get free protection for your applications and to get access to all the features.
Files changed (854) hide show
  1. package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
  2. package/_cjs/collection/Iterable/api.cjs +3 -2
  3. package/_cjs/collection/Iterable/api.cjs.map +1 -1
  4. package/_cjs/collection/Iterable/constructors.cjs.map +1 -1
  5. package/_cjs/collection/Iterable/definition.cjs.map +1 -1
  6. package/_cjs/collection/Iterable.cjs.map +1 -1
  7. package/_cjs/collection/compat/Array/api.cjs.map +1 -1
  8. package/_cjs/collection/compat/Array/definition.cjs.map +1 -1
  9. package/_cjs/collection/compat/Array.cjs.map +1 -1
  10. package/_cjs/collection/compat/ArrayLike/api.cjs.map +1 -1
  11. package/_cjs/collection/compat/ArrayLike/definition.cjs.map +1 -1
  12. package/_cjs/collection/compat.cjs.map +1 -1
  13. package/_cjs/collection/immutable/Conc/api/empty.cjs.map +1 -1
  14. package/_cjs/collection/immutable/Conc/api/makeBy.cjs.map +1 -1
  15. package/_cjs/collection/immutable/Conc/api/replicate.cjs.map +1 -1
  16. package/_cjs/collection/immutable/Conc/api.cjs +25 -12
  17. package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
  18. package/_cjs/collection/immutable/Conc/constructors.cjs.map +1 -1
  19. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  20. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  21. package/_cjs/collection/immutable/Dictionary/api.cjs.map +1 -1
  22. package/_cjs/collection/immutable/Dictionary/definition.cjs.map +1 -1
  23. package/_cjs/collection/immutable/Dictionary.cjs.map +1 -1
  24. package/_cjs/collection/immutable/HashMap/api.cjs +9 -8
  25. package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
  26. package/_cjs/collection/immutable/HashMap/definition.cjs +3 -2
  27. package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
  28. package/_cjs/collection/immutable/HashMap/internal.cjs +7 -6
  29. package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
  30. package/_cjs/collection/immutable/HashMap.cjs.map +1 -1
  31. package/_cjs/collection/immutable/HashSet/api.cjs +7 -6
  32. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  33. package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
  34. package/_cjs/collection/immutable/HashSet.cjs.map +1 -1
  35. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -1
  36. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -1
  37. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -1
  38. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -1
  39. package/_cjs/collection/immutable/ImmutableArray/api.cjs +18 -17
  40. package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
  41. package/_cjs/collection/immutable/ImmutableArray/constructors.cjs.map +1 -1
  42. package/_cjs/collection/immutable/ImmutableArray/definition.cjs.map +1 -1
  43. package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
  44. package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
  45. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
  46. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs +2 -1
  47. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
  48. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
  49. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
  50. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
  51. package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs.map +1 -1
  52. package/_cjs/collection/immutable/List/api/foldLeft.cjs.map +1 -1
  53. package/_cjs/collection/immutable/List/api/unsafeTail.cjs.map +1 -1
  54. package/_cjs/collection/immutable/List/api.cjs +3 -2
  55. package/_cjs/collection/immutable/List/api.cjs.map +1 -1
  56. package/_cjs/collection/immutable/List/constructors.cjs.map +1 -1
  57. package/_cjs/collection/immutable/List/definition.cjs.map +1 -1
  58. package/_cjs/collection/immutable/List.cjs.map +1 -1
  59. package/_cjs/collection/immutable/Queue/api.cjs +7 -6
  60. package/_cjs/collection/immutable/Queue/api.cjs.map +1 -1
  61. package/_cjs/collection/immutable/Queue/constructors.cjs.map +1 -1
  62. package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
  63. package/_cjs/collection/immutable/Queue/guards.cjs.map +1 -1
  64. package/_cjs/collection/immutable/Queue.cjs.map +1 -1
  65. package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -1
  66. package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
  67. package/_cjs/collection/immutable/RoseTree.cjs.map +1 -1
  68. package/_cjs/collection/immutable/SortedMap/api.cjs +23 -22
  69. package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
  70. package/_cjs/collection/immutable/SortedMap/definition.cjs.map +1 -1
  71. package/_cjs/collection/immutable/SortedMap/internal.cjs.map +1 -1
  72. package/_cjs/collection/immutable/SortedMap/iterator.cjs +7 -6
  73. package/_cjs/collection/immutable/SortedMap/iterator.cjs.map +1 -1
  74. package/_cjs/collection/immutable/SortedMap/node.cjs.map +1 -1
  75. package/_cjs/collection/immutable/SortedMap.cjs.map +1 -1
  76. package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
  77. package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
  78. package/_cjs/collection/immutable/Vector/internal.cjs.map +1 -1
  79. package/_cjs/collection/immutable/Vector.cjs.map +1 -1
  80. package/_cjs/collection/immutable.cjs.map +1 -1
  81. package/_cjs/collection/mutable/HashMap.cjs +7 -5
  82. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  83. package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
  84. package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
  85. package/_cjs/collection/mutable/internal.cjs.map +1 -1
  86. package/_cjs/collection/mutable.cjs.map +1 -1
  87. package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
  88. package/_cjs/collection/weak/IterableWeakSet.cjs.map +1 -1
  89. package/_cjs/collection/weak.cjs.map +1 -1
  90. package/_cjs/collection.cjs.map +1 -1
  91. package/_cjs/control/CompletablePromise.cjs +21 -0
  92. package/_cjs/control/CompletablePromise.cjs.map +1 -0
  93. package/_cjs/control/Eval/api/sequenceArray.cjs.map +1 -1
  94. package/_cjs/control/Eval/api.cjs.map +1 -1
  95. package/_cjs/control/Eval/constructors.cjs.map +1 -1
  96. package/_cjs/control/Eval/definition.cjs.map +1 -1
  97. package/_cjs/control/Eval/instance.cjs.map +1 -1
  98. package/_cjs/control/Eval/run.cjs.map +1 -1
  99. package/_cjs/control/Eval.cjs.map +1 -1
  100. package/_cjs/control/LazyValue.cjs.map +1 -1
  101. package/_cjs/control/Z/api.cjs +1 -1
  102. package/_cjs/control/Z/api.cjs.map +1 -1
  103. package/_cjs/control/Z/definition.cjs.map +1 -1
  104. package/_cjs/control/Z/instances.cjs.map +1 -1
  105. package/_cjs/control/Z/runtime.cjs +2 -2
  106. package/_cjs/control/Z/runtime.cjs.map +1 -1
  107. package/_cjs/control/Z.cjs.map +1 -1
  108. package/_cjs/control.cjs.map +1 -1
  109. package/_cjs/data/Branded/definition.cjs.map +1 -1
  110. package/_cjs/data/Branded.cjs.map +1 -1
  111. package/_cjs/data/Byte.cjs.map +1 -1
  112. package/_cjs/data/CaseClass.cjs.map +1 -1
  113. package/_cjs/data/Cause/api/fold.cjs +10 -9
  114. package/_cjs/data/Cause/api/fold.cjs.map +1 -1
  115. package/_cjs/data/Cause/api/isEmpty.cjs +2 -2
  116. package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
  117. package/_cjs/data/Cause/api/linearize.cjs +1 -1
  118. package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
  119. package/_cjs/data/Cause/api/prettyPrint.cjs.map +1 -1
  120. package/_cjs/data/Cause/api/unified.cjs +2 -2
  121. package/_cjs/data/Cause/api/unified.cjs.map +1 -1
  122. package/_cjs/data/Cause/api.cjs +117 -116
  123. package/_cjs/data/Cause/api.cjs.map +1 -1
  124. package/_cjs/data/Cause/definition.cjs +32 -32
  125. package/_cjs/data/Cause/definition.cjs.map +1 -1
  126. package/_cjs/data/Cause.cjs.map +1 -1
  127. package/_cjs/data/Const/api.cjs.map +1 -1
  128. package/_cjs/data/Const/definition.cjs.map +1 -1
  129. package/_cjs/data/Const/instances.cjs.map +1 -1
  130. package/_cjs/data/Const.cjs.map +1 -1
  131. package/_cjs/data/Datum/api.cjs.map +1 -1
  132. package/_cjs/data/Datum/definition.cjs.map +1 -1
  133. package/_cjs/data/Datum/instances.cjs.map +1 -1
  134. package/_cjs/data/DatumEither/api.cjs +5 -4
  135. package/_cjs/data/DatumEither/api.cjs.map +1 -1
  136. package/_cjs/data/DatumEither/definition.cjs.map +1 -1
  137. package/_cjs/data/DatumEither.cjs.map +1 -1
  138. package/_cjs/data/DecodeError/definition.cjs.map +1 -1
  139. package/_cjs/data/DecodeError/instances.cjs.map +1 -1
  140. package/_cjs/data/DecodeError.cjs.map +1 -1
  141. package/_cjs/data/Decoder/api.cjs +3 -2
  142. package/_cjs/data/Decoder/api.cjs.map +1 -1
  143. package/_cjs/data/Decoder/definition.cjs.map +1 -1
  144. package/_cjs/data/Decoder.cjs.map +1 -1
  145. package/_cjs/data/Duration/api.cjs +10 -0
  146. package/_cjs/data/Duration/api.cjs.map +1 -1
  147. package/_cjs/data/Duration/definition.cjs.map +1 -1
  148. package/_cjs/data/Duration.cjs.map +1 -1
  149. package/_cjs/data/Either/api/align.cjs.map +1 -1
  150. package/_cjs/data/Either/api/alignWith.cjs +2 -1
  151. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  152. package/_cjs/data/Either/api.cjs +17 -16
  153. package/_cjs/data/Either/api.cjs.map +1 -1
  154. package/_cjs/data/Either/constructors.cjs +10 -9
  155. package/_cjs/data/Either/constructors.cjs.map +1 -1
  156. package/_cjs/data/Either/definition.cjs +16 -12
  157. package/_cjs/data/Either/definition.cjs.map +1 -1
  158. package/_cjs/data/Either/destructors.cjs.map +1 -1
  159. package/_cjs/data/Either/instances.cjs +7 -6
  160. package/_cjs/data/Either/instances.cjs.map +1 -1
  161. package/_cjs/data/Either.cjs.map +1 -1
  162. package/_cjs/data/EitherT/api.cjs +4 -3
  163. package/_cjs/data/EitherT/api.cjs.map +1 -1
  164. package/_cjs/data/EitherT/definition.cjs.map +1 -1
  165. package/_cjs/data/Encoder/api.cjs +1 -1
  166. package/_cjs/data/Encoder/api.cjs.map +1 -1
  167. package/_cjs/data/Encoder/definition.cjs.map +1 -1
  168. package/_cjs/data/Encoder.cjs.map +1 -1
  169. package/_cjs/data/Environment/api.cjs.map +1 -1
  170. package/_cjs/data/Environment/definition.cjs.map +1 -1
  171. package/_cjs/data/Environment.cjs.map +1 -1
  172. package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
  173. package/_cjs/data/Eq/api.cjs +20 -0
  174. package/_cjs/data/Eq/api.cjs.map +1 -0
  175. package/_cjs/data/Eq/definition.cjs.map +1 -1
  176. package/_cjs/data/Eq/derivations.cjs.map +1 -1
  177. package/_cjs/data/Eq.cjs +11 -0
  178. package/_cjs/data/Eq.cjs.map +1 -1
  179. package/_cjs/data/Equatable/api.cjs +27 -8
  180. package/_cjs/data/Equatable/api.cjs.map +1 -1
  181. package/_cjs/data/Equatable/definition.cjs +1 -1
  182. package/_cjs/data/Equatable/definition.cjs.map +1 -1
  183. package/_cjs/data/Equatable/fast-equals.cjs.map +1 -1
  184. package/_cjs/data/Equatable.cjs.map +1 -1
  185. package/_cjs/data/ExecutionStrategy.cjs.map +1 -1
  186. package/_cjs/data/Exit/api.cjs +40 -14
  187. package/_cjs/data/Exit/api.cjs.map +1 -1
  188. package/_cjs/data/Exit/constructors.cjs +13 -12
  189. package/_cjs/data/Exit/constructors.cjs.map +1 -1
  190. package/_cjs/data/Exit/definition.cjs +11 -6
  191. package/_cjs/data/Exit/definition.cjs.map +1 -1
  192. package/_cjs/data/Exit.cjs.map +1 -1
  193. package/_cjs/data/FiberId/api.cjs.map +1 -1
  194. package/_cjs/data/FiberId/constructors.cjs.map +1 -1
  195. package/_cjs/data/FiberId/definition.cjs.map +1 -1
  196. package/_cjs/data/FiberId.cjs.map +1 -1
  197. package/_cjs/data/Guard/api.cjs +1 -1
  198. package/_cjs/data/Guard/api.cjs.map +1 -1
  199. package/_cjs/data/Guard/definition.cjs.map +1 -1
  200. package/_cjs/data/Guard.cjs.map +1 -1
  201. package/_cjs/data/Hash.cjs.map +1 -1
  202. package/_cjs/data/HashEq.cjs.map +1 -1
  203. package/_cjs/data/Hashable/definition.cjs.map +1 -1
  204. package/_cjs/data/Hashable/hash.cjs.map +1 -1
  205. package/_cjs/data/Hashable.cjs.map +1 -1
  206. package/_cjs/data/Identity/api.cjs.map +1 -1
  207. package/_cjs/data/Identity/definition.cjs.map +1 -1
  208. package/_cjs/data/Identity/instances.cjs.map +1 -1
  209. package/_cjs/data/Identity.cjs.map +1 -1
  210. package/_cjs/data/Interval.cjs +2 -1
  211. package/_cjs/data/Interval.cjs.map +1 -1
  212. package/_cjs/data/Intervals.cjs.map +1 -1
  213. package/_cjs/data/Maybe/api.cjs +8 -7
  214. package/_cjs/data/Maybe/api.cjs.map +1 -1
  215. package/_cjs/data/Maybe/constructors.cjs +11 -11
  216. package/_cjs/data/Maybe/constructors.cjs.map +1 -1
  217. package/_cjs/data/Maybe/definition.cjs +10 -5
  218. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  219. package/_cjs/data/Maybe/destructors.cjs.map +1 -1
  220. package/_cjs/data/Maybe/instances.cjs +2 -1
  221. package/_cjs/data/Maybe/instances.cjs.map +1 -1
  222. package/_cjs/data/Maybe.cjs.map +1 -1
  223. package/_cjs/data/Newtype.cjs.map +1 -1
  224. package/_cjs/data/Ord/api/contramap.cjs.map +1 -1
  225. package/_cjs/data/Ord/api/max.cjs.map +1 -1
  226. package/_cjs/data/Ord/api/min.cjs.map +1 -1
  227. package/_cjs/data/Ord/api.cjs.map +1 -1
  228. package/_cjs/data/Ord/definition.cjs.map +1 -1
  229. package/_cjs/data/Ord/instances.cjs.map +1 -1
  230. package/_cjs/data/Ord.cjs.map +1 -1
  231. package/_cjs/data/Ordering.cjs.map +1 -1
  232. package/_cjs/data/Predicate/api.cjs.map +1 -1
  233. package/_cjs/data/Predicate/definition.cjs.map +1 -1
  234. package/_cjs/data/Predicate.cjs.map +1 -1
  235. package/_cjs/data/Refinement/api.cjs.map +1 -1
  236. package/_cjs/data/Refinement/definition.cjs.map +1 -1
  237. package/_cjs/data/Refinement.cjs.map +1 -1
  238. package/_cjs/data/Showable/definition.cjs.map +1 -1
  239. package/_cjs/data/Showable/show.cjs.map +1 -1
  240. package/_cjs/data/Showable/styles.cjs.map +1 -1
  241. package/_cjs/data/Showable/util.cjs.map +1 -1
  242. package/_cjs/data/Showable.cjs.map +1 -1
  243. package/_cjs/data/Struct/api.cjs.map +1 -1
  244. package/_cjs/data/Struct/definition.cjs.map +1 -1
  245. package/_cjs/data/Struct.cjs.map +1 -1
  246. package/_cjs/data/Tag/constructors.cjs.map +1 -1
  247. package/_cjs/data/Tag/definition.cjs.map +1 -1
  248. package/_cjs/data/Tag.cjs.map +1 -1
  249. package/_cjs/data/These/api.cjs.map +1 -1
  250. package/_cjs/data/These/constructors.cjs.map +1 -1
  251. package/_cjs/data/These/definition.cjs.map +1 -1
  252. package/_cjs/data/These/destructors.cjs +3 -2
  253. package/_cjs/data/These/destructors.cjs.map +1 -1
  254. package/_cjs/data/These/instances.cjs.map +1 -1
  255. package/_cjs/data/These.cjs.map +1 -1
  256. package/_cjs/data/Trace/api.cjs.map +1 -1
  257. package/_cjs/data/Trace/constructors.cjs.map +1 -1
  258. package/_cjs/data/Trace/definition.cjs.map +1 -1
  259. package/_cjs/data/Trace.cjs.map +1 -1
  260. package/_cjs/data/TraceElement/definition.cjs.map +1 -1
  261. package/_cjs/data/TraceElement.cjs.map +1 -1
  262. package/_cjs/data/Zipped.cjs.map +1 -1
  263. package/_cjs/data/bigint/definition.cjs.map +1 -1
  264. package/_cjs/data/bigint/instances.cjs.map +1 -1
  265. package/_cjs/data/bigint.cjs.map +1 -1
  266. package/_cjs/data/boolean/definition.cjs.map +1 -1
  267. package/_cjs/data/boolean/instances.cjs.map +1 -1
  268. package/_cjs/data/boolean.cjs.map +1 -1
  269. package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs.map +1 -1
  270. package/_cjs/data/exceptions/IOError.cjs +25 -0
  271. package/_cjs/data/exceptions/IOError.cjs.map +1 -0
  272. package/_cjs/data/exceptions/IllegalArgumentError.cjs.map +1 -1
  273. package/_cjs/data/exceptions/IllegalStateError.cjs.map +1 -1
  274. package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs.map +1 -1
  275. package/_cjs/data/exceptions/InterruptedException.cjs.map +1 -1
  276. package/_cjs/data/exceptions/InvalidCapacityError.cjs.map +1 -1
  277. package/_cjs/data/exceptions/NoSuchElementError.cjs.map +1 -1
  278. package/_cjs/data/exceptions/RuntimeError.cjs.map +1 -1
  279. package/_cjs/data/exceptions.cjs +11 -0
  280. package/_cjs/data/exceptions.cjs.map +1 -1
  281. package/_cjs/data/function/api.cjs.map +1 -1
  282. package/_cjs/data/function/definition.cjs.map +1 -1
  283. package/_cjs/data/function/pipe.cjs.map +1 -1
  284. package/_cjs/data/function.cjs.map +1 -1
  285. package/_cjs/data/number/api.cjs.map +1 -1
  286. package/_cjs/data/number/definition.cjs.map +1 -1
  287. package/_cjs/data/number/instances.cjs.map +1 -1
  288. package/_cjs/data/number.cjs.map +1 -1
  289. package/_cjs/data/object/definition.cjs.map +1 -1
  290. package/_cjs/data/object/instances.cjs.map +1 -1
  291. package/_cjs/data/object.cjs.map +1 -1
  292. package/_cjs/data/string/api.cjs.map +1 -1
  293. package/_cjs/data/string/definition.cjs.map +1 -1
  294. package/_cjs/data/string/instances.cjs.map +1 -1
  295. package/_cjs/data/string.cjs.map +1 -1
  296. package/_cjs/data.cjs.map +1 -1
  297. package/_cjs/global/api.cjs.map +1 -1
  298. package/_cjs/global.cjs.map +1 -1
  299. package/_cjs/index.cjs.map +1 -1
  300. package/_cjs/internal/AtomicBoolean.cjs.map +1 -1
  301. package/_cjs/internal/AtomicNumber.cjs.map +1 -1
  302. package/_cjs/internal/AtomicReference.cjs.map +1 -1
  303. package/_cjs/internal/Stack.cjs.map +1 -1
  304. package/_cjs/json/EitherJson.cjs.map +1 -1
  305. package/_cjs/json/MaybeJson.cjs.map +1 -1
  306. package/_cjs/json/TheseJson.cjs.map +1 -1
  307. package/_cjs/json.cjs.map +1 -1
  308. package/_cjs/optics/At/api.cjs.map +1 -1
  309. package/_cjs/optics/At/definition.cjs.map +1 -1
  310. package/_cjs/optics/At.cjs.map +1 -1
  311. package/_cjs/optics/Fold/definition.cjs.map +1 -1
  312. package/_cjs/optics/Fold.cjs.map +1 -1
  313. package/_cjs/optics/Getter/definition.cjs.map +1 -1
  314. package/_cjs/optics/Getter.cjs.map +1 -1
  315. package/_cjs/optics/Index/api.cjs.map +1 -1
  316. package/_cjs/optics/Index/definition.cjs.map +1 -1
  317. package/_cjs/optics/Index.cjs.map +1 -1
  318. package/_cjs/optics/Iso/api.cjs.map +1 -1
  319. package/_cjs/optics/Iso/definition.cjs.map +1 -1
  320. package/_cjs/optics/Iso.cjs.map +1 -1
  321. package/_cjs/optics/Lens/api.cjs.map +1 -1
  322. package/_cjs/optics/Lens/definition.cjs +2 -1
  323. package/_cjs/optics/Lens/definition.cjs.map +1 -1
  324. package/_cjs/optics/Lens.cjs.map +1 -1
  325. package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
  326. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  327. package/_cjs/optics/Optional.cjs.map +1 -1
  328. package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
  329. package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
  330. package/_cjs/optics/Prism/api/just.cjs +2 -1
  331. package/_cjs/optics/Prism/api/just.cjs.map +1 -1
  332. package/_cjs/optics/Prism/definition.cjs.map +1 -1
  333. package/_cjs/optics/Prism.cjs.map +1 -1
  334. package/_cjs/optics/Setter/definition.cjs.map +1 -1
  335. package/_cjs/optics/Setter.cjs.map +1 -1
  336. package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
  337. package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
  338. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  339. package/_cjs/optics/Traversal.cjs.map +1 -1
  340. package/_cjs/optics.cjs.map +1 -1
  341. package/_cjs/typeclass/Align.cjs.map +1 -1
  342. package/_cjs/typeclass/Alt.cjs.map +1 -1
  343. package/_cjs/typeclass/Alternative.cjs.map +1 -1
  344. package/_cjs/typeclass/Applicative.cjs.map +1 -1
  345. package/_cjs/typeclass/ApplicativeExcept.cjs +2 -1
  346. package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
  347. package/_cjs/typeclass/Apply.cjs.map +1 -1
  348. package/_cjs/typeclass/Chain.cjs.map +1 -1
  349. package/_cjs/typeclass/Closure.cjs.map +1 -1
  350. package/_cjs/typeclass/Fail.cjs.map +1 -1
  351. package/_cjs/typeclass/Filterable.cjs.map +1 -1
  352. package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
  353. package/_cjs/typeclass/Foldable.cjs.map +1 -1
  354. package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
  355. package/_cjs/typeclass/Functor.cjs.map +1 -1
  356. package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
  357. package/_cjs/typeclass/Has.cjs.map +1 -1
  358. package/_cjs/typeclass/Monad.cjs.map +1 -1
  359. package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
  360. package/_cjs/typeclass/Monoid.cjs.map +1 -1
  361. package/_cjs/typeclass/Nil.cjs.map +1 -1
  362. package/_cjs/typeclass/Pointed.cjs.map +1 -1
  363. package/_cjs/typeclass/Semialign.cjs +2 -1
  364. package/_cjs/typeclass/Semialign.cjs.map +1 -1
  365. package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
  366. package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
  367. package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
  368. package/_cjs/typeclass/Semigroup.cjs.map +1 -1
  369. package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
  370. package/_cjs/typeclass/Traversable.cjs.map +1 -1
  371. package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
  372. package/_cjs/typeclass/Witherable.cjs +2 -1
  373. package/_cjs/typeclass/Witherable.cjs.map +1 -1
  374. package/_cjs/typeclass/WitherableWithIndex.cjs +2 -1
  375. package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
  376. package/_cjs/typeclass/builtin/Symbol.cjs.map +1 -1
  377. package/_cjs/typeclass/builtin.cjs.map +1 -1
  378. package/_cjs/typeclass.cjs.map +1 -1
  379. package/_cjs/types/extractions.cjs.map +1 -1
  380. package/_cjs/types/utility.cjs.map +1 -1
  381. package/_cjs/types.cjs +0 -11
  382. package/_cjs/types.cjs.map +1 -1
  383. package/_cjs/util/AnsiFormat.cjs.map +1 -1
  384. package/_cjs/util/PCGRandom.cjs.map +1 -1
  385. package/_cjs/util/assert.cjs.map +1 -1
  386. package/_cjs/util/pattern.cjs.map +1 -1
  387. package/_cjs/util/predicates.cjs.map +1 -1
  388. package/_cjs/util/rand/Random.cjs.map +1 -1
  389. package/_cjs/util/rand/distribution/Distribution.cjs.map +1 -1
  390. package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs.map +1 -1
  391. package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs.map +1 -1
  392. package/_cjs/util/rand/distribution/UniformIntDistribution.cjs.map +1 -1
  393. package/_cjs/util/rand/distribution/internals/ArrayInt.cjs.map +1 -1
  394. package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs.map +1 -1
  395. package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs.map +1 -1
  396. package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
  397. package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
  398. package/_cjs/util/rand.cjs.map +1 -1
  399. package/_cjs/util.cjs.map +1 -1
  400. package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
  401. package/_mjs/collection/Iterable/api.mjs +3 -2
  402. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  403. package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
  404. package/_mjs/collection/Iterable/definition.mjs.map +1 -1
  405. package/_mjs/collection/Iterable.mjs.map +1 -1
  406. package/_mjs/collection/compat/Array/api.mjs.map +1 -1
  407. package/_mjs/collection/compat/Array/definition.mjs.map +1 -1
  408. package/_mjs/collection/compat/Array.mjs.map +1 -1
  409. package/_mjs/collection/compat/ArrayLike/api.mjs.map +1 -1
  410. package/_mjs/collection/compat/ArrayLike/definition.mjs.map +1 -1
  411. package/_mjs/collection/compat.mjs.map +1 -1
  412. package/_mjs/collection/immutable/Conc/api/empty.mjs.map +1 -1
  413. package/_mjs/collection/immutable/Conc/api/makeBy.mjs.map +1 -1
  414. package/_mjs/collection/immutable/Conc/api/replicate.mjs.map +1 -1
  415. package/_mjs/collection/immutable/Conc/api.mjs +24 -12
  416. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  417. package/_mjs/collection/immutable/Conc/constructors.mjs.map +1 -1
  418. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  419. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  420. package/_mjs/collection/immutable/Dictionary/api.mjs.map +1 -1
  421. package/_mjs/collection/immutable/Dictionary/definition.mjs.map +1 -1
  422. package/_mjs/collection/immutable/Dictionary.mjs.map +1 -1
  423. package/_mjs/collection/immutable/HashMap/api.mjs +9 -8
  424. package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
  425. package/_mjs/collection/immutable/HashMap/definition.mjs +3 -2
  426. package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
  427. package/_mjs/collection/immutable/HashMap/internal.mjs +7 -6
  428. package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
  429. package/_mjs/collection/immutable/HashMap.mjs.map +1 -1
  430. package/_mjs/collection/immutable/HashSet/api.mjs +7 -6
  431. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  432. package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
  433. package/_mjs/collection/immutable/HashSet.mjs.map +1 -1
  434. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -1
  435. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -1
  436. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -1
  437. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -1
  438. package/_mjs/collection/immutable/ImmutableArray/api.mjs +18 -17
  439. package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
  440. package/_mjs/collection/immutable/ImmutableArray/constructors.mjs.map +1 -1
  441. package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +1 -1
  442. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
  443. package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
  444. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
  445. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs +2 -1
  446. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
  447. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
  448. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
  449. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
  450. package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs.map +1 -1
  451. package/_mjs/collection/immutable/List/api/foldLeft.mjs.map +1 -1
  452. package/_mjs/collection/immutable/List/api/unsafeTail.mjs.map +1 -1
  453. package/_mjs/collection/immutable/List/api.mjs +3 -2
  454. package/_mjs/collection/immutable/List/api.mjs.map +1 -1
  455. package/_mjs/collection/immutable/List/constructors.mjs.map +1 -1
  456. package/_mjs/collection/immutable/List/definition.mjs.map +1 -1
  457. package/_mjs/collection/immutable/List.mjs.map +1 -1
  458. package/_mjs/collection/immutable/Queue/api.mjs +7 -6
  459. package/_mjs/collection/immutable/Queue/api.mjs.map +1 -1
  460. package/_mjs/collection/immutable/Queue/constructors.mjs.map +1 -1
  461. package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
  462. package/_mjs/collection/immutable/Queue/guards.mjs.map +1 -1
  463. package/_mjs/collection/immutable/Queue.mjs.map +1 -1
  464. package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -1
  465. package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
  466. package/_mjs/collection/immutable/RoseTree.mjs.map +1 -1
  467. package/_mjs/collection/immutable/SortedMap/api.mjs +23 -22
  468. package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
  469. package/_mjs/collection/immutable/SortedMap/definition.mjs.map +1 -1
  470. package/_mjs/collection/immutable/SortedMap/internal.mjs.map +1 -1
  471. package/_mjs/collection/immutable/SortedMap/iterator.mjs +7 -6
  472. package/_mjs/collection/immutable/SortedMap/iterator.mjs.map +1 -1
  473. package/_mjs/collection/immutable/SortedMap/node.mjs.map +1 -1
  474. package/_mjs/collection/immutable/SortedMap.mjs.map +1 -1
  475. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  476. package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
  477. package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
  478. package/_mjs/collection/immutable/Vector.mjs.map +1 -1
  479. package/_mjs/collection/immutable.mjs.map +1 -1
  480. package/_mjs/collection/mutable/HashMap.mjs +6 -5
  481. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  482. package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
  483. package/_mjs/collection/mutable/ListBuffer.mjs.map +1 -1
  484. package/_mjs/collection/mutable/internal.mjs.map +1 -1
  485. package/_mjs/collection/mutable.mjs.map +1 -1
  486. package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
  487. package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
  488. package/_mjs/collection/weak.mjs.map +1 -1
  489. package/_mjs/collection.mjs.map +1 -1
  490. package/_mjs/control/CompletablePromise.mjs +15 -0
  491. package/_mjs/control/CompletablePromise.mjs.map +1 -0
  492. package/_mjs/control/Eval/api/sequenceArray.mjs.map +1 -1
  493. package/_mjs/control/Eval/api.mjs.map +1 -1
  494. package/_mjs/control/Eval/constructors.mjs.map +1 -1
  495. package/_mjs/control/Eval/definition.mjs.map +1 -1
  496. package/_mjs/control/Eval/instance.mjs.map +1 -1
  497. package/_mjs/control/Eval/run.mjs.map +1 -1
  498. package/_mjs/control/Eval.mjs.map +1 -1
  499. package/_mjs/control/LazyValue.mjs.map +1 -1
  500. package/_mjs/control/Z/api.mjs +1 -1
  501. package/_mjs/control/Z/api.mjs.map +1 -1
  502. package/_mjs/control/Z/definition.mjs.map +1 -1
  503. package/_mjs/control/Z/instances.mjs.map +1 -1
  504. package/_mjs/control/Z/runtime.mjs +2 -2
  505. package/_mjs/control/Z/runtime.mjs.map +1 -1
  506. package/_mjs/control/Z.mjs.map +1 -1
  507. package/_mjs/control.mjs.map +1 -1
  508. package/_mjs/data/Branded/definition.mjs.map +1 -1
  509. package/_mjs/data/Branded.mjs.map +1 -1
  510. package/_mjs/data/Byte.mjs.map +1 -1
  511. package/_mjs/data/CaseClass.mjs.map +1 -1
  512. package/_mjs/data/Cause/api/fold.mjs +10 -9
  513. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  514. package/_mjs/data/Cause/api/isEmpty.mjs +2 -2
  515. package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
  516. package/_mjs/data/Cause/api/linearize.mjs +2 -2
  517. package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
  518. package/_mjs/data/Cause/api/prettyPrint.mjs.map +1 -1
  519. package/_mjs/data/Cause/api/unified.mjs +2 -2
  520. package/_mjs/data/Cause/api/unified.mjs.map +1 -1
  521. package/_mjs/data/Cause/api.mjs +113 -112
  522. package/_mjs/data/Cause/api.mjs.map +1 -1
  523. package/_mjs/data/Cause/definition.mjs +29 -29
  524. package/_mjs/data/Cause/definition.mjs.map +1 -1
  525. package/_mjs/data/Cause.mjs.map +1 -1
  526. package/_mjs/data/Const/api.mjs.map +1 -1
  527. package/_mjs/data/Const/definition.mjs.map +1 -1
  528. package/_mjs/data/Const/instances.mjs.map +1 -1
  529. package/_mjs/data/Const.mjs.map +1 -1
  530. package/_mjs/data/Datum/api.mjs.map +1 -1
  531. package/_mjs/data/Datum/definition.mjs.map +1 -1
  532. package/_mjs/data/Datum/instances.mjs.map +1 -1
  533. package/_mjs/data/DatumEither/api.mjs +5 -4
  534. package/_mjs/data/DatumEither/api.mjs.map +1 -1
  535. package/_mjs/data/DatumEither/definition.mjs.map +1 -1
  536. package/_mjs/data/DatumEither.mjs.map +1 -1
  537. package/_mjs/data/DecodeError/definition.mjs.map +1 -1
  538. package/_mjs/data/DecodeError/instances.mjs.map +1 -1
  539. package/_mjs/data/DecodeError.mjs.map +1 -1
  540. package/_mjs/data/Decoder/api.mjs +3 -2
  541. package/_mjs/data/Decoder/api.mjs.map +1 -1
  542. package/_mjs/data/Decoder/definition.mjs.map +1 -1
  543. package/_mjs/data/Decoder.mjs.map +1 -1
  544. package/_mjs/data/Duration/api.mjs +9 -0
  545. package/_mjs/data/Duration/api.mjs.map +1 -1
  546. package/_mjs/data/Duration/definition.mjs.map +1 -1
  547. package/_mjs/data/Duration.mjs.map +1 -1
  548. package/_mjs/data/Either/api/align.mjs.map +1 -1
  549. package/_mjs/data/Either/api/alignWith.mjs +2 -1
  550. package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
  551. package/_mjs/data/Either/api.mjs +17 -16
  552. package/_mjs/data/Either/api.mjs.map +1 -1
  553. package/_mjs/data/Either/constructors.mjs +10 -9
  554. package/_mjs/data/Either/constructors.mjs.map +1 -1
  555. package/_mjs/data/Either/definition.mjs +15 -11
  556. package/_mjs/data/Either/definition.mjs.map +1 -1
  557. package/_mjs/data/Either/destructors.mjs.map +1 -1
  558. package/_mjs/data/Either/instances.mjs +7 -6
  559. package/_mjs/data/Either/instances.mjs.map +1 -1
  560. package/_mjs/data/Either.mjs.map +1 -1
  561. package/_mjs/data/EitherT/api.mjs +4 -3
  562. package/_mjs/data/EitherT/api.mjs.map +1 -1
  563. package/_mjs/data/EitherT/definition.mjs.map +1 -1
  564. package/_mjs/data/Encoder/api.mjs +1 -1
  565. package/_mjs/data/Encoder/api.mjs.map +1 -1
  566. package/_mjs/data/Encoder/definition.mjs.map +1 -1
  567. package/_mjs/data/Encoder.mjs.map +1 -1
  568. package/_mjs/data/Environment/api.mjs.map +1 -1
  569. package/_mjs/data/Environment/definition.mjs.map +1 -1
  570. package/_mjs/data/Environment.mjs.map +1 -1
  571. package/_mjs/data/EnvironmentPatch.mjs.map +1 -1
  572. package/_mjs/data/Eq/api.mjs +12 -0
  573. package/_mjs/data/Eq/api.mjs.map +1 -0
  574. package/_mjs/data/Eq/definition.mjs.map +1 -1
  575. package/_mjs/data/Eq/derivations.mjs.map +1 -1
  576. package/_mjs/data/Eq.mjs +1 -0
  577. package/_mjs/data/Eq.mjs.map +1 -1
  578. package/_mjs/data/Equatable/api.mjs +26 -7
  579. package/_mjs/data/Equatable/api.mjs.map +1 -1
  580. package/_mjs/data/Equatable/definition.mjs +1 -1
  581. package/_mjs/data/Equatable/definition.mjs.map +1 -1
  582. package/_mjs/data/Equatable/fast-equals.mjs.map +1 -1
  583. package/_mjs/data/Equatable.mjs.map +1 -1
  584. package/_mjs/data/ExecutionStrategy.mjs.map +1 -1
  585. package/_mjs/data/Exit/api.mjs +38 -14
  586. package/_mjs/data/Exit/api.mjs.map +1 -1
  587. package/_mjs/data/Exit/constructors.mjs +13 -12
  588. package/_mjs/data/Exit/constructors.mjs.map +1 -1
  589. package/_mjs/data/Exit/definition.mjs +11 -6
  590. package/_mjs/data/Exit/definition.mjs.map +1 -1
  591. package/_mjs/data/Exit.mjs.map +1 -1
  592. package/_mjs/data/FiberId/api.mjs.map +1 -1
  593. package/_mjs/data/FiberId/constructors.mjs.map +1 -1
  594. package/_mjs/data/FiberId/definition.mjs.map +1 -1
  595. package/_mjs/data/FiberId.mjs.map +1 -1
  596. package/_mjs/data/Guard/api.mjs +1 -1
  597. package/_mjs/data/Guard/api.mjs.map +1 -1
  598. package/_mjs/data/Guard/definition.mjs.map +1 -1
  599. package/_mjs/data/Guard.mjs.map +1 -1
  600. package/_mjs/data/Hash.mjs.map +1 -1
  601. package/_mjs/data/HashEq.mjs.map +1 -1
  602. package/_mjs/data/Hashable/definition.mjs.map +1 -1
  603. package/_mjs/data/Hashable/hash.mjs.map +1 -1
  604. package/_mjs/data/Hashable.mjs.map +1 -1
  605. package/_mjs/data/Identity/api.mjs.map +1 -1
  606. package/_mjs/data/Identity/definition.mjs.map +1 -1
  607. package/_mjs/data/Identity/instances.mjs.map +1 -1
  608. package/_mjs/data/Identity.mjs.map +1 -1
  609. package/_mjs/data/Interval.mjs +2 -1
  610. package/_mjs/data/Interval.mjs.map +1 -1
  611. package/_mjs/data/Intervals.mjs.map +1 -1
  612. package/_mjs/data/Maybe/api.mjs +8 -7
  613. package/_mjs/data/Maybe/api.mjs.map +1 -1
  614. package/_mjs/data/Maybe/constructors.mjs +11 -11
  615. package/_mjs/data/Maybe/constructors.mjs.map +1 -1
  616. package/_mjs/data/Maybe/definition.mjs +10 -5
  617. package/_mjs/data/Maybe/definition.mjs.map +1 -1
  618. package/_mjs/data/Maybe/destructors.mjs.map +1 -1
  619. package/_mjs/data/Maybe/instances.mjs +2 -1
  620. package/_mjs/data/Maybe/instances.mjs.map +1 -1
  621. package/_mjs/data/Maybe.mjs.map +1 -1
  622. package/_mjs/data/Newtype.mjs.map +1 -1
  623. package/_mjs/data/Ord/api/contramap.mjs.map +1 -1
  624. package/_mjs/data/Ord/api/max.mjs.map +1 -1
  625. package/_mjs/data/Ord/api/min.mjs.map +1 -1
  626. package/_mjs/data/Ord/api.mjs.map +1 -1
  627. package/_mjs/data/Ord/definition.mjs.map +1 -1
  628. package/_mjs/data/Ord/instances.mjs.map +1 -1
  629. package/_mjs/data/Ord.mjs.map +1 -1
  630. package/_mjs/data/Ordering.mjs.map +1 -1
  631. package/_mjs/data/Predicate/api.mjs.map +1 -1
  632. package/_mjs/data/Predicate/definition.mjs.map +1 -1
  633. package/_mjs/data/Predicate.mjs.map +1 -1
  634. package/_mjs/data/Refinement/api.mjs.map +1 -1
  635. package/_mjs/data/Refinement/definition.mjs.map +1 -1
  636. package/_mjs/data/Refinement.mjs.map +1 -1
  637. package/_mjs/data/Showable/definition.mjs.map +1 -1
  638. package/_mjs/data/Showable/show.mjs.map +1 -1
  639. package/_mjs/data/Showable/styles.mjs.map +1 -1
  640. package/_mjs/data/Showable/util.mjs.map +1 -1
  641. package/_mjs/data/Showable.mjs.map +1 -1
  642. package/_mjs/data/Struct/api.mjs.map +1 -1
  643. package/_mjs/data/Struct/definition.mjs.map +1 -1
  644. package/_mjs/data/Struct.mjs.map +1 -1
  645. package/_mjs/data/Tag/constructors.mjs.map +1 -1
  646. package/_mjs/data/Tag/definition.mjs.map +1 -1
  647. package/_mjs/data/Tag.mjs.map +1 -1
  648. package/_mjs/data/These/api.mjs.map +1 -1
  649. package/_mjs/data/These/constructors.mjs.map +1 -1
  650. package/_mjs/data/These/definition.mjs.map +1 -1
  651. package/_mjs/data/These/destructors.mjs +3 -2
  652. package/_mjs/data/These/destructors.mjs.map +1 -1
  653. package/_mjs/data/These/instances.mjs.map +1 -1
  654. package/_mjs/data/These.mjs.map +1 -1
  655. package/_mjs/data/Trace/api.mjs.map +1 -1
  656. package/_mjs/data/Trace/constructors.mjs.map +1 -1
  657. package/_mjs/data/Trace/definition.mjs.map +1 -1
  658. package/_mjs/data/Trace.mjs.map +1 -1
  659. package/_mjs/data/TraceElement/definition.mjs.map +1 -1
  660. package/_mjs/data/TraceElement.mjs.map +1 -1
  661. package/_mjs/data/Zipped.mjs.map +1 -1
  662. package/_mjs/data/bigint/definition.mjs.map +1 -1
  663. package/_mjs/data/bigint/instances.mjs.map +1 -1
  664. package/_mjs/data/bigint.mjs.map +1 -1
  665. package/_mjs/data/boolean/definition.mjs.map +1 -1
  666. package/_mjs/data/boolean/instances.mjs.map +1 -1
  667. package/_mjs/data/boolean.mjs.map +1 -1
  668. package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs.map +1 -1
  669. package/_mjs/data/exceptions/IOError.mjs +14 -0
  670. package/_mjs/data/exceptions/IOError.mjs.map +1 -0
  671. package/_mjs/data/exceptions/IllegalArgumentError.mjs.map +1 -1
  672. package/_mjs/data/exceptions/IllegalStateError.mjs.map +1 -1
  673. package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs.map +1 -1
  674. package/_mjs/data/exceptions/InterruptedException.mjs.map +1 -1
  675. package/_mjs/data/exceptions/InvalidCapacityError.mjs.map +1 -1
  676. package/_mjs/data/exceptions/NoSuchElementError.mjs.map +1 -1
  677. package/_mjs/data/exceptions/RuntimeError.mjs.map +1 -1
  678. package/_mjs/data/exceptions.mjs +1 -0
  679. package/_mjs/data/exceptions.mjs.map +1 -1
  680. package/_mjs/data/function/api.mjs.map +1 -1
  681. package/_mjs/data/function/definition.mjs.map +1 -1
  682. package/_mjs/data/function/pipe.mjs.map +1 -1
  683. package/_mjs/data/function.mjs.map +1 -1
  684. package/_mjs/data/number/api.mjs.map +1 -1
  685. package/_mjs/data/number/definition.mjs.map +1 -1
  686. package/_mjs/data/number/instances.mjs.map +1 -1
  687. package/_mjs/data/number.mjs.map +1 -1
  688. package/_mjs/data/object/definition.mjs.map +1 -1
  689. package/_mjs/data/object/instances.mjs.map +1 -1
  690. package/_mjs/data/object.mjs.map +1 -1
  691. package/_mjs/data/string/api.mjs.map +1 -1
  692. package/_mjs/data/string/definition.mjs.map +1 -1
  693. package/_mjs/data/string/instances.mjs.map +1 -1
  694. package/_mjs/data/string.mjs.map +1 -1
  695. package/_mjs/data.mjs.map +1 -1
  696. package/_mjs/global/api.mjs.map +1 -1
  697. package/_mjs/global.mjs.map +1 -1
  698. package/_mjs/index.mjs.map +1 -1
  699. package/_mjs/internal/AtomicBoolean.mjs.map +1 -1
  700. package/_mjs/internal/AtomicNumber.mjs.map +1 -1
  701. package/_mjs/internal/AtomicReference.mjs.map +1 -1
  702. package/_mjs/internal/Stack.mjs.map +1 -1
  703. package/_mjs/json/EitherJson.mjs.map +1 -1
  704. package/_mjs/json/MaybeJson.mjs.map +1 -1
  705. package/_mjs/json/TheseJson.mjs.map +1 -1
  706. package/_mjs/json.mjs.map +1 -1
  707. package/_mjs/optics/At/api.mjs.map +1 -1
  708. package/_mjs/optics/At/definition.mjs.map +1 -1
  709. package/_mjs/optics/At.mjs.map +1 -1
  710. package/_mjs/optics/Fold/definition.mjs.map +1 -1
  711. package/_mjs/optics/Fold.mjs.map +1 -1
  712. package/_mjs/optics/Getter/definition.mjs.map +1 -1
  713. package/_mjs/optics/Getter.mjs.map +1 -1
  714. package/_mjs/optics/Index/api.mjs.map +1 -1
  715. package/_mjs/optics/Index/definition.mjs.map +1 -1
  716. package/_mjs/optics/Index.mjs.map +1 -1
  717. package/_mjs/optics/Iso/api.mjs.map +1 -1
  718. package/_mjs/optics/Iso/definition.mjs.map +1 -1
  719. package/_mjs/optics/Iso.mjs.map +1 -1
  720. package/_mjs/optics/Lens/api.mjs.map +1 -1
  721. package/_mjs/optics/Lens/definition.mjs +2 -1
  722. package/_mjs/optics/Lens/definition.mjs.map +1 -1
  723. package/_mjs/optics/Lens.mjs.map +1 -1
  724. package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
  725. package/_mjs/optics/Optional/definition.mjs.map +1 -1
  726. package/_mjs/optics/Optional.mjs.map +1 -1
  727. package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
  728. package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
  729. package/_mjs/optics/Prism/api/just.mjs +2 -1
  730. package/_mjs/optics/Prism/api/just.mjs.map +1 -1
  731. package/_mjs/optics/Prism/definition.mjs.map +1 -1
  732. package/_mjs/optics/Prism.mjs.map +1 -1
  733. package/_mjs/optics/Setter/definition.mjs.map +1 -1
  734. package/_mjs/optics/Setter.mjs.map +1 -1
  735. package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
  736. package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
  737. package/_mjs/optics/Traversal/definition.mjs.map +1 -1
  738. package/_mjs/optics/Traversal.mjs.map +1 -1
  739. package/_mjs/optics.mjs.map +1 -1
  740. package/_mjs/typeclass/Align.mjs.map +1 -1
  741. package/_mjs/typeclass/Alt.mjs.map +1 -1
  742. package/_mjs/typeclass/Alternative.mjs.map +1 -1
  743. package/_mjs/typeclass/Applicative.mjs.map +1 -1
  744. package/_mjs/typeclass/ApplicativeExcept.mjs +2 -1
  745. package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
  746. package/_mjs/typeclass/Apply.mjs.map +1 -1
  747. package/_mjs/typeclass/Chain.mjs.map +1 -1
  748. package/_mjs/typeclass/Closure.mjs.map +1 -1
  749. package/_mjs/typeclass/Fail.mjs.map +1 -1
  750. package/_mjs/typeclass/Filterable.mjs.map +1 -1
  751. package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
  752. package/_mjs/typeclass/Foldable.mjs.map +1 -1
  753. package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
  754. package/_mjs/typeclass/Functor.mjs.map +1 -1
  755. package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
  756. package/_mjs/typeclass/Has.mjs.map +1 -1
  757. package/_mjs/typeclass/Monad.mjs.map +1 -1
  758. package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
  759. package/_mjs/typeclass/Monoid.mjs.map +1 -1
  760. package/_mjs/typeclass/Nil.mjs.map +1 -1
  761. package/_mjs/typeclass/Pointed.mjs.map +1 -1
  762. package/_mjs/typeclass/Semialign.mjs +2 -1
  763. package/_mjs/typeclass/Semialign.mjs.map +1 -1
  764. package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
  765. package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
  766. package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
  767. package/_mjs/typeclass/Semigroup.mjs.map +1 -1
  768. package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
  769. package/_mjs/typeclass/Traversable.mjs.map +1 -1
  770. package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
  771. package/_mjs/typeclass/Witherable.mjs +2 -1
  772. package/_mjs/typeclass/Witherable.mjs.map +1 -1
  773. package/_mjs/typeclass/WitherableWithIndex.mjs +2 -1
  774. package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
  775. package/_mjs/typeclass/builtin/Symbol.mjs.map +1 -1
  776. package/_mjs/typeclass/builtin.mjs.map +1 -1
  777. package/_mjs/typeclass.mjs.map +1 -1
  778. package/_mjs/types/extractions.mjs.map +1 -1
  779. package/_mjs/types/utility.mjs.map +1 -1
  780. package/_mjs/types.mjs +0 -1
  781. package/_mjs/types.mjs.map +1 -1
  782. package/_mjs/util/AnsiFormat.mjs.map +1 -1
  783. package/_mjs/util/PCGRandom.mjs.map +1 -1
  784. package/_mjs/util/assert.mjs.map +1 -1
  785. package/_mjs/util/pattern.mjs.map +1 -1
  786. package/_mjs/util/predicates.mjs.map +1 -1
  787. package/_mjs/util/rand/Random.mjs.map +1 -1
  788. package/_mjs/util/rand/distribution/Distribution.mjs.map +1 -1
  789. package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs.map +1 -1
  790. package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs.map +1 -1
  791. package/_mjs/util/rand/distribution/UniformIntDistribution.mjs.map +1 -1
  792. package/_mjs/util/rand/distribution/internals/ArrayInt.mjs.map +1 -1
  793. package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs.map +1 -1
  794. package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs.map +1 -1
  795. package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
  796. package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
  797. package/_mjs/util/rand.mjs.map +1 -1
  798. package/_mjs/util.mjs.map +1 -1
  799. package/_src/collection/immutable/Conc/api.ts +12 -0
  800. package/_src/control/CompletablePromise.ts +23 -0
  801. package/_src/control.ts +1 -0
  802. package/_src/data/Cause/api/fold.ts +2 -2
  803. package/_src/data/Cause/api/isEmpty.ts +2 -2
  804. package/_src/data/Cause/api/linearize.ts +2 -2
  805. package/_src/data/Cause/api/unified.ts +2 -2
  806. package/_src/data/Cause/api.ts +66 -55
  807. package/_src/data/Cause/definition.ts +59 -59
  808. package/_src/data/Decoder/api.ts +1 -1
  809. package/_src/data/Duration/api.ts +10 -0
  810. package/_src/data/Either/constructors.ts +4 -4
  811. package/_src/data/Either/definition.ts +13 -6
  812. package/_src/data/Encoder/api.ts +1 -1
  813. package/_src/data/Eq/api.ts +8 -0
  814. package/_src/data/Eq.ts +1 -0
  815. package/_src/data/Equatable/api.ts +27 -10
  816. package/_src/data/Equatable/definition.ts +6 -2
  817. package/_src/data/Exit/api.ts +38 -8
  818. package/_src/data/Exit/constructors.ts +7 -7
  819. package/_src/data/Exit/definition.ts +9 -4
  820. package/_src/data/Guard/api.ts +1 -1
  821. package/_src/data/Maybe/constructors.ts +4 -6
  822. package/_src/data/Maybe/definition.ts +9 -1
  823. package/_src/data/exceptions/IOError.ts +11 -0
  824. package/_src/data/exceptions/NoSuchElementError.ts +1 -1
  825. package/_src/data/exceptions.ts +1 -0
  826. package/_src/types.ts +0 -1
  827. package/collection/immutable/Conc/api.d.ts +5 -0
  828. package/control/CompletablePromise.d.ts +13 -0
  829. package/control.d.ts +1 -0
  830. package/data/Cause/api.d.ts +9 -9
  831. package/data/Cause/definition.d.ts +15 -14
  832. package/data/Duration/api.d.ts +6 -0
  833. package/data/Either/constructors.d.ts +2 -2
  834. package/data/Either/definition.d.ts +12 -5
  835. package/data/Eq/api.d.ts +6 -0
  836. package/data/Eq.d.ts +1 -0
  837. package/data/Equatable/api.d.ts +1 -1
  838. package/data/Equatable/definition.d.ts +4 -1
  839. package/data/Exit/api.d.ts +12 -0
  840. package/data/Exit/constructors.d.ts +5 -5
  841. package/data/Exit/definition.d.ts +9 -2
  842. package/data/Maybe/constructors.d.ts +2 -2
  843. package/data/Maybe/definition.d.ts +9 -1
  844. package/data/exceptions/IOError.d.ts +9 -0
  845. package/data/exceptions/NoSuchElementError.d.ts +1 -1
  846. package/data/exceptions.d.ts +1 -0
  847. package/package.json +1 -1
  848. package/types.d.ts +0 -1
  849. package/_cjs/types/test.cjs +0 -6
  850. package/_cjs/types/test.cjs.map +0 -1
  851. package/_mjs/types/test.mjs +0 -2
  852. package/_mjs/types/test.mjs.map +0 -1
  853. package/_src/types/test.ts +0 -0
  854. package/types/test.d.ts +0 -1
@@ -12,7 +12,7 @@ export type CauseTypeId = typeof CauseTypeId;
12
12
  /**
13
13
  * @tsplus type fncts.Cause
14
14
  */
15
- export type Cause<E> = Empty | Halt | Interrupt | Fail<E> | Then<E> | Both<E> | Stackless<E>;
15
+ export type Cause<E> = Empty | Halt | Interrupt | Fail<E> | Sequential<E> | Parallel<E> | Stackless<E>;
16
16
 
17
17
  /**
18
18
  * @tsplus type fncts.CauseOps
@@ -30,8 +30,8 @@ export const enum CauseTag {
30
30
  Fail = "Fail",
31
31
  Halt = "Halt",
32
32
  Interrupt = "Interrupt",
33
- Then = "Then",
34
- Both = "Both",
33
+ Sequential = "Sequential",
34
+ Parallel = "Parallel",
35
35
  Stackless = "Stackless",
36
36
  }
37
37
 
@@ -40,7 +40,7 @@ const _emptyHash = Hashable.string("fncts.Cause");
40
40
  /**
41
41
  * @tsplus companion fncts.Cause.EmptyOps
42
42
  */
43
- export class Empty {
43
+ export class Empty implements Equatable {
44
44
  readonly [CauseTypeId]: CauseTypeId = CauseTypeId;
45
45
  declare [CauseVariance]: {
46
46
  readonly _E: (_: never) => never;
@@ -58,8 +58,8 @@ export class Empty {
58
58
  switch (that._tag) {
59
59
  case CauseTag.Empty:
60
60
  return Eval.now(true);
61
- case CauseTag.Then:
62
- case CauseTag.Both:
61
+ case CauseTag.Sequential:
62
+ case CauseTag.Parallel:
63
63
  return this.equalsEval(that.left).zipWith(this.equalsEval(that.right), (x, y) => x && y);
64
64
  case CauseTag.Stackless:
65
65
  return this.equalsEval(that.cause);
@@ -74,7 +74,7 @@ export const _Empty = new Empty();
74
74
  /**
75
75
  * @tsplus companion fncts.Cause.FailOps
76
76
  */
77
- export class Fail<E> {
77
+ export class Fail<E> implements Equatable {
78
78
  readonly [CauseTypeId]: CauseTypeId = CauseTypeId;
79
79
  declare [CauseVariance]: {
80
80
  readonly _E: (_: never) => E;
@@ -97,8 +97,8 @@ export class Fail<E> {
97
97
  switch (that._tag) {
98
98
  case CauseTag.Fail:
99
99
  return P.Equatable.strictEquals(self.value, that.value);
100
- case CauseTag.Both:
101
- case CauseTag.Then:
100
+ case CauseTag.Parallel:
101
+ case CauseTag.Sequential:
102
102
  return yield* _(structuralSymmetric(structuralEqualEmpty)(self, that));
103
103
  case CauseTag.Stackless:
104
104
  return yield* _(self.equalsEval(that.cause));
@@ -112,7 +112,7 @@ export class Fail<E> {
112
112
  /**
113
113
  * @tsplus companion fncts.Cause.HaltOps
114
114
  */
115
- export class Halt {
115
+ export class Halt implements Equatable {
116
116
  readonly [CauseTypeId]: CauseTypeId = CauseTypeId;
117
117
  declare [CauseVariance]: {
118
118
  readonly _E: (_: never) => never;
@@ -135,8 +135,8 @@ export class Halt {
135
135
  switch (that._tag) {
136
136
  case CauseTag.Halt:
137
137
  return P.Equatable.strictEquals(self.value, that.value);
138
- case CauseTag.Then:
139
- case CauseTag.Both:
138
+ case CauseTag.Sequential:
139
+ case CauseTag.Parallel:
140
140
  return yield* _(structuralSymmetric(structuralEqualEmpty)(self, that));
141
141
  case CauseTag.Stackless:
142
142
  return yield* _(self.equalsEval(that.cause));
@@ -150,7 +150,7 @@ export class Halt {
150
150
  /**
151
151
  * @tsplus companion fncts.Cause.InterruptOps
152
152
  */
153
- export class Interrupt {
153
+ export class Interrupt implements Equatable {
154
154
  readonly [CauseTypeId]: CauseTypeId = CauseTypeId;
155
155
  declare [CauseVariance]: {
156
156
  readonly _E: (_: never) => never;
@@ -174,8 +174,8 @@ export class Interrupt {
174
174
  switch (that._tag) {
175
175
  case CauseTag.Interrupt:
176
176
  return P.Equatable.strictEquals(self.id, that.id);
177
- case CauseTag.Then:
178
- case CauseTag.Both:
177
+ case CauseTag.Sequential:
178
+ case CauseTag.Parallel:
179
179
  return yield* _(structuralSymmetric(structuralEqualEmpty)(self, that));
180
180
  case CauseTag.Stackless:
181
181
  return yield* _(self.equalsEval(that.cause));
@@ -187,14 +187,14 @@ export class Interrupt {
187
187
  }
188
188
 
189
189
  /**
190
- * @tsplus companion fncts.Cause.ThenOps
190
+ * @tsplus companion fncts.Cause.SequentialOps
191
191
  */
192
- export class Then<E> {
192
+ export class Sequential<E> implements Equatable {
193
193
  readonly [CauseTypeId]: CauseTypeId = CauseTypeId;
194
194
  declare [CauseVariance]: {
195
195
  readonly _E: (_: never) => E;
196
196
  };
197
- readonly _tag = CauseTag.Then;
197
+ readonly _tag = CauseTag.Sequential;
198
198
 
199
199
  constructor(readonly left: Cause<E>, readonly right: Cause<E>) {}
200
200
 
@@ -221,14 +221,14 @@ export class Then<E> {
221
221
  }
222
222
 
223
223
  /**
224
- * @tsplus companion fncts.Cause.BothOps
224
+ * @tsplus companion fncts.Cause.ParallelOps
225
225
  */
226
- export class Both<E> {
226
+ export class Parallel<E> implements Equatable {
227
227
  readonly [CauseTypeId]: CauseTypeId = CauseTypeId;
228
228
  declare [CauseVariance]: {
229
229
  readonly _E: (_: never) => E;
230
230
  };
231
- readonly _tag = CauseTag.Both;
231
+ readonly _tag = CauseTag.Parallel;
232
232
 
233
233
  constructor(readonly left: Cause<E>, readonly right: Cause<E>) {}
234
234
 
@@ -257,7 +257,7 @@ export class Both<E> {
257
257
  /**
258
258
  * @tsplus companion fncts.Cause.StacklessOps
259
259
  */
260
- export class Stackless<E> {
260
+ export class Stackless<E> implements Equatable {
261
261
  readonly [CauseTypeId]: CauseTypeId = CauseTypeId;
262
262
  declare [CauseVariance]: {
263
263
  readonly _E: (_: never) => E;
@@ -296,7 +296,7 @@ function structuralSymmetric<A>(
296
296
  }
297
297
 
298
298
  function structuralEqualEmpty<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
299
- if (l._tag === CauseTag.Then || l._tag === CauseTag.Both) {
299
+ if (l._tag === CauseTag.Sequential || l._tag === CauseTag.Parallel) {
300
300
  if (l.left._tag === CauseTag.Empty) {
301
301
  return l.right.equalsEval(r);
302
302
  } else if (l.right._tag === CauseTag.Empty) {
@@ -311,10 +311,10 @@ function structuralEqualEmpty<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
311
311
 
312
312
  function structuralThenAssociate<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
313
313
  if (
314
- l._tag === CauseTag.Then &&
315
- l.left._tag === CauseTag.Then &&
316
- r._tag === CauseTag.Then &&
317
- r.right._tag === CauseTag.Then
314
+ l._tag === CauseTag.Sequential &&
315
+ l.left._tag === CauseTag.Sequential &&
316
+ r._tag === CauseTag.Sequential &&
317
+ r.right._tag === CauseTag.Sequential
318
318
  ) {
319
319
  return l.left.left
320
320
  .equalsEval(r.left)
@@ -327,11 +327,11 @@ function structuralThenAssociate<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
327
327
 
328
328
  function strcturalThenDistribute<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
329
329
  if (
330
- l._tag === CauseTag.Then &&
331
- l.right._tag === CauseTag.Both &&
332
- r._tag === CauseTag.Both &&
333
- r.right._tag === CauseTag.Then &&
334
- r.left._tag === CauseTag.Then
330
+ l._tag === CauseTag.Sequential &&
331
+ l.right._tag === CauseTag.Parallel &&
332
+ r._tag === CauseTag.Parallel &&
333
+ r.right._tag === CauseTag.Sequential &&
334
+ r.left._tag === CauseTag.Sequential
335
335
  ) {
336
336
  return r.left.left
337
337
  .equalsEval(r.right.left)
@@ -339,11 +339,11 @@ function strcturalThenDistribute<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
339
339
  .and(l.right.left.equalsEval(r.left.right))
340
340
  .and(l.right.right.equalsEval(r.right.right));
341
341
  } else if (
342
- l._tag === CauseTag.Then &&
343
- l.left._tag === CauseTag.Both &&
344
- r._tag === CauseTag.Both &&
345
- r.left._tag === CauseTag.Then &&
346
- r.right._tag === CauseTag.Then
342
+ l._tag === CauseTag.Sequential &&
343
+ l.left._tag === CauseTag.Parallel &&
344
+ r._tag === CauseTag.Parallel &&
345
+ r.left._tag === CauseTag.Sequential &&
346
+ r.right._tag === CauseTag.Sequential
347
347
  ) {
348
348
  return r.left.right
349
349
  .equalsEval(r.right.right)
@@ -356,7 +356,7 @@ function strcturalThenDistribute<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
356
356
  }
357
357
 
358
358
  function structuralEqualThen<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
359
- if (l._tag === CauseTag.Then && r._tag === CauseTag.Then) {
359
+ if (l._tag === CauseTag.Sequential && r._tag === CauseTag.Sequential) {
360
360
  return l.left.equalsEval(r.left).zipWith(l.right.equalsEval(r.right), (a, b) => a && b);
361
361
  } else {
362
362
  return Eval.now(false);
@@ -365,10 +365,10 @@ function structuralEqualThen<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
365
365
 
366
366
  function structuralBothAssociate<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
367
367
  if (
368
- l._tag === CauseTag.Both &&
369
- l.left._tag === CauseTag.Both &&
370
- r._tag === CauseTag.Both &&
371
- r.right._tag === CauseTag.Both
368
+ l._tag === CauseTag.Parallel &&
369
+ l.left._tag === CauseTag.Parallel &&
370
+ r._tag === CauseTag.Parallel &&
371
+ r.right._tag === CauseTag.Parallel
372
372
  ) {
373
373
  return l.left.left
374
374
  .equalsEval(r.left)
@@ -381,11 +381,11 @@ function structuralBothAssociate<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
381
381
 
382
382
  function structuralBothDistribute<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
383
383
  if (
384
- l._tag === CauseTag.Both &&
385
- l.left._tag === CauseTag.Then &&
386
- l.right._tag === CauseTag.Then &&
387
- r._tag === CauseTag.Then &&
388
- r.right._tag === CauseTag.Both
384
+ l._tag === CauseTag.Parallel &&
385
+ l.left._tag === CauseTag.Sequential &&
386
+ l.right._tag === CauseTag.Sequential &&
387
+ r._tag === CauseTag.Sequential &&
388
+ r.right._tag === CauseTag.Parallel
389
389
  ) {
390
390
  return l.left.left
391
391
  .equalsEval(l.right.left)
@@ -393,11 +393,11 @@ function structuralBothDistribute<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
393
393
  .and(l.left.right.equalsEval(r.right.left))
394
394
  .and(l.right.right.equalsEval(r.right.right));
395
395
  } else if (
396
- l._tag === CauseTag.Both &&
397
- l.left._tag === CauseTag.Then &&
398
- l.right._tag === CauseTag.Then &&
399
- r._tag === CauseTag.Then &&
400
- r.left._tag === CauseTag.Both
396
+ l._tag === CauseTag.Parallel &&
397
+ l.left._tag === CauseTag.Sequential &&
398
+ l.right._tag === CauseTag.Sequential &&
399
+ r._tag === CauseTag.Sequential &&
400
+ r.left._tag === CauseTag.Parallel
401
401
  ) {
402
402
  return l.left.right
403
403
  .equalsEval(l.right.right)
@@ -410,7 +410,7 @@ function structuralBothDistribute<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
410
410
  }
411
411
 
412
412
  function structuralEqualBoth<A>(l: Cause<A>, r: Cause<A>): Eval<boolean> {
413
- if (l._tag === CauseTag.Both && r._tag === CauseTag.Both) {
413
+ if (l._tag === CauseTag.Parallel && r._tag === CauseTag.Parallel) {
414
414
  return l.left.equalsEval(r.left).zipWith(l.right.equalsEval(r.right), (a, b) => a && b);
415
415
  } else {
416
416
  return Eval.now(false);
@@ -442,7 +442,7 @@ function stepLoop<A>(
442
442
  }
443
443
  break;
444
444
  }
445
- case CauseTag.Then: {
445
+ case CauseTag.Sequential: {
446
446
  const left = cause.left;
447
447
  const right = cause.right;
448
448
  switch (left._tag) {
@@ -450,12 +450,12 @@ function stepLoop<A>(
450
450
  cause = right;
451
451
  break;
452
452
  }
453
- case CauseTag.Then: {
454
- cause = new Then(left.left, new Then(left.right, right));
453
+ case CauseTag.Sequential: {
454
+ cause = new Sequential(left.left, new Sequential(left.right, right));
455
455
  break;
456
456
  }
457
- case CauseTag.Both: {
458
- cause = new Both(new Then(left.left, right), new Then(left.right, right));
457
+ case CauseTag.Parallel: {
458
+ cause = new Parallel(new Sequential(left.left, right), new Sequential(left.right, right));
459
459
  break;
460
460
  }
461
461
  default: {
@@ -465,7 +465,7 @@ function stepLoop<A>(
465
465
  }
466
466
  break;
467
467
  }
468
- case CauseTag.Both: {
468
+ case CauseTag.Parallel: {
469
469
  stack = stack.prepend(cause.right);
470
470
  cause = cause.left;
471
471
  break;
@@ -682,5 +682,5 @@ export function deriveTuple<A extends ReadonlyArray<unknown>>(
682
682
  * @tsplus static fncts.DecoderOps tuple
683
683
  */
684
684
  export function tuple<A extends ReadonlyArray<unknown>>(...components: { [K in keyof A]: Decoder<A[K]> }): Decoder<A> {
685
- return deriveTuple(components.unsafeCoerce()).unsafeCoerce();
685
+ return deriveTuple(components as [never]).unsafeCoerce()
686
686
  }
@@ -83,3 +83,13 @@ export function fromInterval(start: number, end: number): Duration {
83
83
  * @tsplus static fncts.DurationOps zero
84
84
  */
85
85
  export const zero: Duration = (0).milliseconds;
86
+
87
+ /**
88
+ * @tsplus fluent fncts.Duration lessThanOrEqualTo
89
+ * @tsplus pipeable-operator fncts.Duration <=
90
+ */
91
+ export function lessThanOrEqualTo(that: Duration) {
92
+ return (self: Duration): boolean => {
93
+ return self.milliseconds <= that.milliseconds;
94
+ };
95
+ }
@@ -6,16 +6,16 @@ import { Either, Left, Right } from "./definition.js";
6
6
  * @tsplus static fncts.EitherOps left
7
7
  * @tsplus static fncts.Either.LeftOps __call
8
8
  */
9
- export function left<E = never, A = never>(e: E): Either<E, A> {
10
- return new Left(e);
9
+ export function left<E = never, A = never>(e: E, __tsplusTrace?: string): Either<E, A> {
10
+ return new Left(e, __tsplusTrace);
11
11
  }
12
12
 
13
13
  /**
14
14
  * @tsplus static fncts.EitherOps right
15
15
  * @tsplus static fncts.Either.RightOps __call
16
16
  */
17
- export function right<E = never, A = never>(a: A): Either<E, A> {
18
- return new Right(a);
17
+ export function right<E = never, A = never>(a: A, __tsplusTrace?: string): Either<E, A> {
18
+ return new Right(a, __tsplusTrace);
19
19
  }
20
20
 
21
21
  /**
@@ -1,3 +1,5 @@
1
+ import type { EqualsContext } from "@fncts/base/data/Equatable";
2
+
1
3
  export const enum EitherTag {
2
4
  Left = "Left",
3
5
  Right = "Right",
@@ -17,12 +19,17 @@ export interface EitherF extends HKT {
17
19
  };
18
20
  }
19
21
 
22
+ const IOTypeId = Symbol.for("fncts.io.IO");
23
+ type IOTypeId = typeof IOTypeId;
24
+
20
25
  /**
21
26
  * @tsplus type fncts.Either
22
27
  * @tsplus companion fncts.EitherOps
23
28
  */
24
29
  export class Either<E, A> {
25
30
  readonly [EitherTypeId]: EitherTypeId = EitherTypeId;
31
+ readonly [IOTypeId]: IOTypeId = IOTypeId;
32
+ readonly trace?: string | undefined = undefined;
26
33
  declare [EitherVariance]: {
27
34
  readonly _E: (_: never) => E;
28
35
  readonly _A: (_: never) => A;
@@ -37,7 +44,7 @@ const leftHash = Hashable.string(EitherTag.Left);
37
44
  */
38
45
  export class Left<E> extends Either<E, never> {
39
46
  readonly _tag = EitherTag.Left;
40
- constructor(readonly left: E) {
47
+ constructor(readonly left: E, readonly trace?: string) {
41
48
  super();
42
49
  }
43
50
 
@@ -45,8 +52,8 @@ export class Left<E> extends Either<E, never> {
45
52
  return Hashable.combine(leftHash, Hashable.unknown(this.left));
46
53
  }
47
54
 
48
- [Symbol.equals](that: unknown): boolean {
49
- return Either.isEither(that) && that.isLeft() && Equatable.strictEquals(this.left, that.left);
55
+ [Symbol.equals](that: unknown, context: EqualsContext): boolean {
56
+ return Either.isEither(that) && that.isLeft() && context.comparator(this.left, that.left);
50
57
  }
51
58
  }
52
59
 
@@ -58,7 +65,7 @@ const rightHash = Hashable.string(EitherTag.Right);
58
65
  */
59
66
  export class Right<A> extends Either<never, A> {
60
67
  readonly _tag = EitherTag.Right;
61
- constructor(readonly right: A) {
68
+ constructor(readonly right: A, readonly trace?: string) {
62
69
  super();
63
70
  }
64
71
 
@@ -66,8 +73,8 @@ export class Right<A> extends Either<never, A> {
66
73
  return Hashable.combine(rightHash, Hashable.unknown(this.left));
67
74
  }
68
75
 
69
- [Symbol.equals](that: unknown): boolean {
70
- return Either.isEither(that) && that.isRight() && Equatable.strictEquals(this.right, that.right);
76
+ [Symbol.equals](that: unknown, context: EqualsContext): boolean {
77
+ return Either.isEither(that) && that.isRight() && context.comparator(this.right, that.right);
71
78
  }
72
79
  }
73
80
 
@@ -371,5 +371,5 @@ export function deriveTuple<A extends ReadonlyArray<unknown>>(
371
371
  * @tsplus static fncts.EncoderOps tuple
372
372
  */
373
373
  export function tuple<A extends ReadonlyArray<unknown>>(...components: { [K in keyof A]: Encoder<A[K]> }): Encoder<A> {
374
- return deriveTuple(components.unsafeCoerce()).unsafeCoerce();
374
+ return deriveTuple(components as [never]).unsafeCoerce()
375
375
  }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @tsplus pipeable fncts.Eq contramap
3
+ */
4
+ export function contramap<A, B>(f: (b: B) => A) {
5
+ return (self: Eq<A>): Eq<B> => {
6
+ return Eq({ equals: (b2) => (b1) => self.equals(f(b2))(f(b1)) });
7
+ };
8
+ }
package/_src/data/Eq.ts CHANGED
@@ -1,2 +1,3 @@
1
+ export * from "./Eq/api.js";
1
2
  export * from "./Eq/definition.js";
2
3
  export {} from "./Eq/derivations.js";
@@ -1,3 +1,5 @@
1
+ import type { EqualsContext } from "@fncts/base/data/Equatable/definition";
2
+
1
3
  import { isEquatable } from "@fncts/base/data/Equatable/definition";
2
4
  import {
3
5
  createCircularEqualCreator,
@@ -5,30 +7,45 @@ import {
5
7
  sameValueZeroEqual,
6
8
  } from "@fncts/base/data/Equatable/fast-equals";
7
9
 
8
- /**
9
- * @tsplus static fncts.EquatableOps deepEquals
10
- */
11
- export const deepEquals = createComparator(
10
+ const deepEqualsComparator = createComparator(
12
11
  createCircularEqualCreator((eq) => (a, b, meta) => {
12
+ const equalsContext: EqualsContext = { comparator: deepEquals };
13
13
  if (isEquatable(a)) {
14
- return a[Symbol.equals](b);
14
+ return a[Symbol.equals](b, equalsContext);
15
15
  } else if (isEquatable(b)) {
16
- return b[Symbol.equals](a);
16
+ return b[Symbol.equals](a, equalsContext);
17
17
  } else {
18
18
  return eq(a, b, meta);
19
19
  }
20
20
  }),
21
21
  );
22
22
 
23
+ /**
24
+ * @tsplus static fncts.EquatableOps deepEquals
25
+ */
26
+ export function deepEquals<A>(a: A, b: unknown): boolean {
27
+ const context: EqualsContext = { comparator: deepEquals };
28
+ if (isEquatable(a)) {
29
+ return a[Symbol.equals](b, context);
30
+ } else if (isEquatable(b)) {
31
+ return b[Symbol.equals](a, context);
32
+ } else {
33
+ return deepEqualsComparator(a, b);
34
+ }
35
+ }
36
+
23
37
  /**
24
38
  * @tsplus static fncts.EquatableOps strictEquals
25
39
  * @tsplus operator fncts.Equatable ==
26
40
  */
27
41
  export function strictEquals<A>(a: A, b: unknown): boolean {
42
+ const context: EqualsContext = {
43
+ comparator: strictEquals,
44
+ };
28
45
  if (isEquatable(a)) {
29
- return a[Symbol.equals](b);
46
+ return a[Symbol.equals](b, context);
30
47
  } else if (isEquatable(b)) {
31
- return b[Symbol.equals](a);
48
+ return b[Symbol.equals](a, context);
32
49
  }
33
50
  return sameValueZeroEqual(a, b);
34
51
  }
@@ -38,5 +55,5 @@ export function strictEquals<A>(a: A, b: unknown): boolean {
38
55
  * @tsplus operator fncts.Equatable !=
39
56
  */
40
57
  export function strictNotEquals<A>(a: A, b: unknown): boolean {
41
- return !strictEquals(a, b)
42
- }
58
+ return !strictEquals(a, b);
59
+ }
@@ -3,15 +3,19 @@
3
3
  */
4
4
  export const equalsSymbol: unique symbol = Symbol.for("fncts.Equatable");
5
5
 
6
+ export interface EqualsContext {
7
+ comparator: (a: unknown, b: unknown) => boolean;
8
+ }
9
+
6
10
  /**
7
11
  * @tsplus type fncts.Equatable
8
12
  */
9
13
  export interface Equatable {
10
- [equalsSymbol](that: unknown): boolean;
14
+ [equalsSymbol](that: unknown, context: EqualsContext): boolean;
11
15
  }
12
16
 
13
17
  export function isEquatable(u: unknown): u is Equatable {
14
- return isObject(u) && Symbol.equals in u;
18
+ return isObject(u) && typeof u[Symbol.equals] === "function";
15
19
  }
16
20
 
17
21
  /**
@@ -1,3 +1,5 @@
1
+ import { IOError } from "@fncts/base/data/exceptions";
2
+
1
3
  import { identity, tuple } from "../function.js";
2
4
  import { ExitTag } from "./definition.js";
3
5
 
@@ -15,7 +17,7 @@ export function ap<E, A>(that: Exit<E, A>) {
15
17
  */
16
18
  export function zipLeft<G, B>(that: Exit<G, B>) {
17
19
  return <E, A>(self: Exit<E, A>): Exit<E | G, A> => {
18
- return self.zipWithCause(that, (a, _) => a, Cause.then);
20
+ return self.zipWithCause(that, (a, _) => a, Cause.sequential);
19
21
  };
20
22
  }
21
23
 
@@ -24,7 +26,7 @@ export function zipLeft<G, B>(that: Exit<G, B>) {
24
26
  */
25
27
  export function zipRight<G, B>(that: Exit<G, B>) {
26
28
  return <E, A>(self: Exit<E, A>): Exit<E | G, B> => {
27
- return self.zipWithCause(that, (_, b) => b, Cause.then);
29
+ return self.zipWithCause(that, (_, b) => b, Cause.sequential);
28
30
  };
29
31
  }
30
32
 
@@ -33,7 +35,7 @@ export function zipRight<G, B>(that: Exit<G, B>) {
33
35
  */
34
36
  export function zipLeftConcurrent<G, B>(that: Exit<G, B>) {
35
37
  return <E, A>(self: Exit<E, A>): Exit<E | G, A> => {
36
- return self.zipWithCause(that, (a, _) => a, Cause.both);
38
+ return self.zipWithCause(that, (a, _) => a, Cause.parallel);
37
39
  };
38
40
  }
39
41
 
@@ -42,7 +44,7 @@ export function zipLeftConcurrent<G, B>(that: Exit<G, B>) {
42
44
  */
43
45
  export function zipRightConcurrent<G, B>(that: Exit<G, B>) {
44
46
  return <E, A>(self: Exit<E, A>): Exit<E | G, B> => {
45
- return self.zipWithCause(that, (_, b) => b, Cause.both);
47
+ return self.zipWithCause(that, (_, b) => b, Cause.parallel);
46
48
  };
47
49
  }
48
50
 
@@ -69,7 +71,9 @@ export function bimap<E1, A, E2, B>(f: (e: E1) => E2, g: (a: A) => B) {
69
71
  */
70
72
  export function collectAll<E, A>(exits: Conc<Exit<E, A>>): Maybe<Exit<E, Conc<A>>> {
71
73
  return exits.head.map((head) =>
72
- exits.drop(1).foldLeft(head.map(Conc.single), (acc, el) => acc.zipWithCause(el, (c, a) => c.append(a), Cause.then)),
74
+ exits
75
+ .drop(1)
76
+ .foldLeft(head.map(Conc.single), (acc, el) => acc.zipWithCause(el, (c, a) => c.append(a), Cause.sequential)),
73
77
  );
74
78
  }
75
79
 
@@ -78,7 +82,9 @@ export function collectAll<E, A>(exits: Conc<Exit<E, A>>): Maybe<Exit<E, Conc<A>
78
82
  */
79
83
  export function collectAllConcurrent<E, A>(exits: Conc<Exit<E, A>>): Maybe<Exit<E, Conc<A>>> {
80
84
  return exits.head.map((head) =>
81
- exits.drop(1).foldLeft(head.map(Conc.single), (acc, el) => acc.zipWithCause(el, (c, a) => c.append(a), Cause.both)),
85
+ exits
86
+ .drop(1)
87
+ .foldLeft(head.map(Conc.single), (acc, el) => acc.zipWithCause(el, (c, a) => c.append(a), Cause.parallel)),
82
88
  );
83
89
  }
84
90
 
@@ -137,7 +143,7 @@ export function match<E, A, B, C>(onFailure: (e: Cause<E>) => B, onSuccess: (a:
137
143
  */
138
144
  export function zipWith<A, EB, B, C>(fb: Exit<EB, B>, f: (a: A, b: B) => C) {
139
145
  return <EA>(fa: Exit<EA, A>): Exit<EA | EB, C> => {
140
- return fa.zipWithCause(fb, f, Cause.then);
146
+ return fa.zipWithCause(fb, f, Cause.sequential);
141
147
  };
142
148
  }
143
149
 
@@ -155,7 +161,7 @@ export function zip<EB, B>(that: Exit<EB, B>) {
155
161
  */
156
162
  export function zipWithConcurrent<A, EB, B, C>(fb: Exit<EB, B>, f: (a: A, b: B) => C) {
157
163
  return <EA>(fa: Exit<EA, A>): Exit<EA | EB, C> => {
158
- return fa.zipWithCause(fb, f, Cause.both);
164
+ return fa.zipWithCause(fb, f, Cause.parallel);
159
165
  };
160
166
  }
161
167
 
@@ -201,3 +207,27 @@ export function zipWithCause<E, A, G, B, C>(
201
207
  }
202
208
  };
203
209
  }
210
+
211
+ /**
212
+ * Returns the Exit's Success value if it exists
213
+ *
214
+ * @tsplus getter fncts.Exit value
215
+ */
216
+ export function value<E, A>(self: Exit<E, A>): A | undefined {
217
+ if (self.isFailure()) {
218
+ return undefined;
219
+ }
220
+ return self.value;
221
+ }
222
+
223
+ /**
224
+ * Returns the Exit's Success value if it exists, or throws the pretty-printed Cause if it doesn't
225
+ *
226
+ * @tsplus getter fncts.Exit valueOrThrow
227
+ */
228
+ export function valueOrThrow<E, A>(self: Exit<E, A>): A {
229
+ if (self.isFailure()) {
230
+ throw new IOError(self.cause);
231
+ }
232
+ return self.value;
233
+ }
@@ -3,14 +3,14 @@ import { Failure, Success } from "./definition.js";
3
3
  /**
4
4
  * @tsplus static fncts.ExitOps halt
5
5
  */
6
- export function halt(defect: unknown): Exit<never, never> {
6
+ export function halt(defect: unknown, __tsplusTrace?: string): Exit<never, never> {
7
7
  return failCause(Cause.halt(defect));
8
8
  }
9
9
 
10
10
  /**
11
11
  * @tsplus static fncts.ExitOps fail
12
12
  */
13
- export function fail<E = never, A = never>(e: E): Exit<E, A> {
13
+ export function fail<E = never, A = never>(e: E, __tsplusTrace?: string): Exit<E, A> {
14
14
  return failCause(Cause.fail(e));
15
15
  }
16
16
 
@@ -31,22 +31,22 @@ export function fromMaybe<E, A>(fa: Maybe<A>, onNothing: () => E): Exit<E, A> {
31
31
  /**
32
32
  * @tsplus static fncts.ExitOps failCause
33
33
  */
34
- export function failCause<E = never, A = never>(cause: Cause<E>): Exit<E, A> {
35
- return new Failure(cause);
34
+ export function failCause<E = never, A = never>(cause: Cause<E>, __tsplusTrace?: string): Exit<E, A> {
35
+ return new Failure(cause, __tsplusTrace);
36
36
  }
37
37
 
38
38
  /**
39
39
  * @tsplus static fncts.ExitOps interrupt
40
40
  */
41
- export function interrupt(id: FiberId): Exit<never, never> {
41
+ export function interrupt(id: FiberId, __tsplusTrace?: string): Exit<never, never> {
42
42
  return failCause(Cause.interrupt(id));
43
43
  }
44
44
 
45
45
  /**
46
46
  * @tsplus static fncts.ExitOps succeed
47
47
  */
48
- export function succeed<E = never, A = never>(value: A): Exit<E, A> {
49
- return new Success(value);
48
+ export function succeed<E = never, A = never>(value: A, __tsplusTrace?: string): Exit<E, A> {
49
+ return new Success(value, __tsplusTrace);
50
50
  }
51
51
 
52
52
  /**