@fncts/base 0.0.19 → 0.0.21

Sign up to get free protection for your applications and to get access to all the features.
Files changed (995) hide show
  1. package/_cjs/collection/Iterable/api/traverseConc.cjs +8 -8
  2. package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
  3. package/_cjs/collection/Iterable/api.cjs +497 -444
  4. package/_cjs/collection/Iterable/api.cjs.map +1 -1
  5. package/_cjs/collection/Iterable/constructors.cjs +7 -7
  6. package/_cjs/collection/Iterable/constructors.cjs.map +1 -1
  7. package/_cjs/collection/compat/Array/api.cjs +16 -12
  8. package/_cjs/collection/compat/Array/api.cjs.map +1 -1
  9. package/_cjs/collection/compat/Array/derivations.cjs +41 -19
  10. package/_cjs/collection/compat/Array/derivations.cjs.map +1 -1
  11. package/_cjs/collection/compat/ArrayLike/api.cjs +1 -1
  12. package/_cjs/collection/compat/ArrayLike/api.cjs.map +1 -1
  13. package/_cjs/collection/compat/Record/instances.cjs +39 -3
  14. package/_cjs/collection/compat/Record/instances.cjs.map +1 -1
  15. package/_cjs/collection/immutable/Conc/api/makeBy.cjs +1 -1
  16. package/_cjs/collection/immutable/Conc/api/makeBy.cjs.map +1 -1
  17. package/_cjs/collection/immutable/Conc/api.cjs +866 -765
  18. package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
  19. package/_cjs/collection/immutable/Conc/definition.cjs +55 -53
  20. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  21. package/_cjs/collection/immutable/Conc/derivations.cjs +13 -2
  22. package/_cjs/collection/immutable/Conc/derivations.cjs.map +1 -1
  23. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  24. package/_cjs/collection/immutable/Dictionary/api.cjs +57 -44
  25. package/_cjs/collection/immutable/Dictionary/api.cjs.map +1 -1
  26. package/_cjs/collection/immutable/HashMap/api.cjs +351 -258
  27. package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
  28. package/_cjs/collection/immutable/HashMap/definition.cjs +1 -1
  29. package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
  30. package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
  31. package/_cjs/collection/immutable/HashSet/api.cjs +230 -192
  32. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  33. package/_cjs/collection/immutable/HashSet/definition.cjs +1 -1
  34. package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
  35. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs +6 -4
  36. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -1
  37. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs +6 -4
  38. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -1
  39. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs +6 -4
  40. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -1
  41. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs +15 -13
  42. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -1
  43. package/_cjs/collection/immutable/ImmutableArray/api.cjs +943 -749
  44. package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
  45. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs +12 -1
  46. package/_cjs/collection/immutable/ImmutableArray/derivations.cjs.map +1 -1
  47. package/_cjs/collection/immutable/ImmutableArray/instances.cjs +33 -33
  48. package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
  49. package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
  50. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs +338 -273
  51. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
  52. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
  53. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
  54. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs +15 -4
  55. package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs.map +1 -1
  56. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs +2 -2
  57. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
  58. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs +12 -12
  59. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
  60. package/_cjs/collection/immutable/List/api/foldLeft.cjs +12 -10
  61. package/_cjs/collection/immutable/List/api/foldLeft.cjs.map +1 -1
  62. package/_cjs/collection/immutable/List/api.cjs +164 -141
  63. package/_cjs/collection/immutable/List/api.cjs.map +1 -1
  64. package/_cjs/collection/immutable/List.cjs.map +1 -1
  65. package/_cjs/collection/immutable/Queue/api.cjs +64 -48
  66. package/_cjs/collection/immutable/Queue/api.cjs.map +1 -1
  67. package/_cjs/collection/immutable/Queue/definition.cjs +1 -1
  68. package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
  69. package/_cjs/collection/immutable/RoseTree/api.cjs +50 -36
  70. package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -1
  71. package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
  72. package/_cjs/collection/immutable/SortedMap/api.cjs +408 -368
  73. package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
  74. package/_cjs/collection/immutable/Vector/api.cjs +723 -608
  75. package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
  76. package/_cjs/collection/immutable/Vector/definition.cjs +18 -16
  77. package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
  78. package/_cjs/collection/immutable/Vector/internal.cjs +40 -39
  79. package/_cjs/collection/immutable/Vector/internal.cjs.map +1 -1
  80. package/_cjs/collection/mutable/HashMap.cjs +3 -5
  81. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  82. package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
  83. package/_cjs/collection/mutable/ListBuffer.cjs +2 -2
  84. package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
  85. package/_cjs/collection/mutable/internal.cjs +0 -2
  86. package/_cjs/collection/mutable/internal.cjs.map +1 -1
  87. package/_cjs/collection/weak/IterableWeakMap.cjs +7 -7
  88. package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
  89. package/_cjs/collection/weak/IterableWeakSet.cjs +7 -7
  90. package/_cjs/collection/weak/IterableWeakSet.cjs.map +1 -1
  91. package/_cjs/control/Eval/api.cjs +55 -43
  92. package/_cjs/control/Eval/api.cjs.map +1 -1
  93. package/_cjs/control/Eval/instance.cjs +4 -4
  94. package/_cjs/control/Eval/instance.cjs.map +1 -1
  95. package/_cjs/control/Eval/run.cjs +1 -1
  96. package/_cjs/control/Eval/run.cjs.map +1 -1
  97. package/_cjs/control/Z/api.cjs +241 -172
  98. package/_cjs/control/Z/api.cjs.map +1 -1
  99. package/_cjs/control/Z/instances.cjs +3 -3
  100. package/_cjs/control/Z/instances.cjs.map +1 -1
  101. package/_cjs/control/Z/runtime.cjs +250 -241
  102. package/_cjs/control/Z/runtime.cjs.map +1 -1
  103. package/_cjs/data/Branded/definition.cjs.map +1 -1
  104. package/_cjs/data/Branded/derivations.cjs +3 -3
  105. package/_cjs/data/Branded/derivations.cjs.map +1 -1
  106. package/_cjs/data/CaseClass.cjs.map +1 -1
  107. package/_cjs/data/Cause/api/fold.cjs +20 -18
  108. package/_cjs/data/Cause/api/fold.cjs.map +1 -1
  109. package/_cjs/data/Cause/api/isEmpty.cjs +1 -1
  110. package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
  111. package/_cjs/data/Cause/api/linearize.cjs +8 -8
  112. package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
  113. package/_cjs/data/Cause/api/prettyPrint.cjs +1 -1
  114. package/_cjs/data/Cause/api/prettyPrint.cjs.map +1 -1
  115. package/_cjs/data/Cause/api.cjs +160 -140
  116. package/_cjs/data/Cause/api.cjs.map +1 -1
  117. package/_cjs/data/Cause/definition.cjs +18 -18
  118. package/_cjs/data/Cause/definition.cjs.map +1 -1
  119. package/_cjs/data/Cause.cjs.map +1 -1
  120. package/_cjs/data/Const/api.cjs +8 -6
  121. package/_cjs/data/Const/api.cjs.map +1 -1
  122. package/_cjs/data/Const/instances.cjs +4 -4
  123. package/_cjs/data/Const/instances.cjs.map +1 -1
  124. package/_cjs/data/Datum/api.cjs +219 -176
  125. package/_cjs/data/Datum/api.cjs.map +1 -1
  126. package/_cjs/data/Datum/definition.cjs.map +1 -1
  127. package/_cjs/data/DatumEither/api.cjs +165 -133
  128. package/_cjs/data/DatumEither/api.cjs.map +1 -1
  129. package/_cjs/data/DecodeError/definition.cjs +14 -14
  130. package/_cjs/data/DecodeError/definition.cjs.map +1 -1
  131. package/_cjs/data/Decoder/api.cjs +9 -7
  132. package/_cjs/data/Decoder/api.cjs.map +1 -1
  133. package/_cjs/data/Duration/api.cjs +18 -12
  134. package/_cjs/data/Duration/api.cjs.map +1 -1
  135. package/_cjs/data/Either/api/align.cjs +8 -3
  136. package/_cjs/data/Either/api/align.cjs.map +1 -1
  137. package/_cjs/data/Either/api/alignWith.cjs +14 -12
  138. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  139. package/_cjs/data/Either/api.cjs +206 -169
  140. package/_cjs/data/Either/api.cjs.map +1 -1
  141. package/_cjs/data/Either/constructors.cjs +11 -9
  142. package/_cjs/data/Either/constructors.cjs.map +1 -1
  143. package/_cjs/data/Either/destructors.cjs +16 -14
  144. package/_cjs/data/Either/destructors.cjs.map +1 -1
  145. package/_cjs/data/Either/instances.cjs +8 -8
  146. package/_cjs/data/Either/instances.cjs.map +1 -1
  147. package/_cjs/data/EitherT/api.cjs +8 -8
  148. package/_cjs/data/EitherT/api.cjs.map +1 -1
  149. package/_cjs/data/Encoder/api.cjs +134 -0
  150. package/_cjs/data/Encoder/api.cjs.map +1 -0
  151. package/_cjs/data/Encoder/definition.cjs +25 -0
  152. package/_cjs/data/Encoder/definition.cjs.map +1 -0
  153. package/_cjs/data/{Patch.cjs → Encoder.cjs} +3 -3
  154. package/_cjs/data/Encoder.cjs.map +1 -0
  155. package/_cjs/data/Environment/api.cjs +45 -33
  156. package/_cjs/data/Environment/api.cjs.map +1 -1
  157. package/_cjs/data/Environment/definition.cjs.map +1 -1
  158. package/_cjs/data/{Patch/api.cjs → EnvironmentPatch.cjs} +134 -38
  159. package/_cjs/data/EnvironmentPatch.cjs.map +1 -0
  160. package/_cjs/data/ExecutionStrategy.cjs +21 -29
  161. package/_cjs/data/ExecutionStrategy.cjs.map +1 -1
  162. package/_cjs/data/Exit/api.cjs +159 -127
  163. package/_cjs/data/Exit/api.cjs.map +1 -1
  164. package/_cjs/data/Exit/constructors.cjs +4 -4
  165. package/_cjs/data/Exit/constructors.cjs.map +1 -1
  166. package/_cjs/data/FiberId/api.cjs +23 -21
  167. package/_cjs/data/FiberId/api.cjs.map +1 -1
  168. package/_cjs/data/FiberId/constructors.cjs.map +1 -1
  169. package/_cjs/data/Identity/api.cjs +26 -18
  170. package/_cjs/data/Identity/api.cjs.map +1 -1
  171. package/_cjs/data/Identity/instances.cjs +3 -3
  172. package/_cjs/data/Identity/instances.cjs.map +1 -1
  173. package/_cjs/data/Interval.cjs +43 -33
  174. package/_cjs/data/Interval.cjs.map +1 -1
  175. package/_cjs/data/Intervals.cjs +35 -27
  176. package/_cjs/data/Intervals.cjs.map +1 -1
  177. package/_cjs/data/Maybe/api.cjs +160 -125
  178. package/_cjs/data/Maybe/api.cjs.map +1 -1
  179. package/_cjs/data/Maybe/constructors.cjs +2 -2
  180. package/_cjs/data/Maybe/constructors.cjs.map +1 -1
  181. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  182. package/_cjs/data/Maybe/destructors.cjs +9 -7
  183. package/_cjs/data/Maybe/destructors.cjs.map +1 -1
  184. package/_cjs/data/Maybe/instances.cjs +11 -11
  185. package/_cjs/data/Maybe/instances.cjs.map +1 -1
  186. package/_cjs/data/Predicate/api.cjs +10 -8
  187. package/_cjs/data/Predicate/api.cjs.map +1 -1
  188. package/_cjs/data/Refinement/api.cjs +15 -9
  189. package/_cjs/data/Refinement/api.cjs.map +1 -1
  190. package/_cjs/data/Struct/api.cjs +62 -50
  191. package/_cjs/data/Struct/api.cjs.map +1 -1
  192. package/_cjs/data/Tag/constructors.cjs +3 -2
  193. package/_cjs/data/Tag/constructors.cjs.map +1 -1
  194. package/_cjs/data/Tag/definition.cjs +0 -3
  195. package/_cjs/data/Tag/definition.cjs.map +1 -1
  196. package/_cjs/data/These/api.cjs +188 -170
  197. package/_cjs/data/These/api.cjs.map +1 -1
  198. package/_cjs/data/These/constructors.cjs +1 -1
  199. package/_cjs/data/These/constructors.cjs.map +1 -1
  200. package/_cjs/data/These/destructors.cjs +39 -35
  201. package/_cjs/data/These/destructors.cjs.map +1 -1
  202. package/_cjs/data/These/instances.cjs +1 -1
  203. package/_cjs/data/These/instances.cjs.map +1 -1
  204. package/_cjs/data/Trace/api.cjs +7 -5
  205. package/_cjs/data/Trace/api.cjs.map +1 -1
  206. package/_cjs/data/Zipped.cjs.map +1 -1
  207. package/_cjs/data/function/api.cjs +6 -4
  208. package/_cjs/data/function/api.cjs.map +1 -1
  209. package/_cjs/data/function/pipe.cjs +9 -0
  210. package/_cjs/data/function/pipe.cjs.map +1 -1
  211. package/_cjs/data/string/api.cjs +53 -96
  212. package/_cjs/data/string/api.cjs.map +1 -1
  213. package/_cjs/global/api.cjs +4 -2
  214. package/_cjs/global/api.cjs.map +1 -1
  215. package/_cjs/internal/AtomicBoolean.cjs.map +1 -1
  216. package/_cjs/internal/AtomicNumber.cjs.map +1 -1
  217. package/_cjs/internal/AtomicReference.cjs.map +1 -1
  218. package/_cjs/internal/Stack.cjs +2 -2
  219. package/_cjs/internal/Stack.cjs.map +1 -1
  220. package/_cjs/optics/At/api.cjs +1 -1
  221. package/_cjs/optics/At/api.cjs.map +1 -1
  222. package/_cjs/optics/At/definition.cjs +2 -2
  223. package/_cjs/optics/At/definition.cjs.map +1 -1
  224. package/_cjs/optics/Fold/definition.cjs +3 -4
  225. package/_cjs/optics/Fold/definition.cjs.map +1 -1
  226. package/_cjs/optics/Getter/definition.cjs +2 -3
  227. package/_cjs/optics/Getter/definition.cjs.map +1 -1
  228. package/_cjs/optics/Index/api.cjs +4 -4
  229. package/_cjs/optics/Index/api.cjs.map +1 -1
  230. package/_cjs/optics/Index/definition.cjs +2 -2
  231. package/_cjs/optics/Index/definition.cjs.map +1 -1
  232. package/_cjs/optics/Iso/api.cjs +9 -7
  233. package/_cjs/optics/Iso/api.cjs.map +1 -1
  234. package/_cjs/optics/Iso/definition.cjs +12 -12
  235. package/_cjs/optics/Iso/definition.cjs.map +1 -1
  236. package/_cjs/optics/Lens/api.cjs +54 -44
  237. package/_cjs/optics/Lens/api.cjs.map +1 -1
  238. package/_cjs/optics/Lens/definition.cjs +10 -10
  239. package/_cjs/optics/Lens/definition.cjs.map +1 -1
  240. package/_cjs/optics/Optional/api/compose.cjs +9 -7
  241. package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
  242. package/_cjs/optics/Optional/definition.cjs +12 -13
  243. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  244. package/_cjs/optics/Optional.cjs.map +1 -1
  245. package/_cjs/optics/Prism/api/compose.cjs +9 -7
  246. package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
  247. package/_cjs/optics/Prism/api/fromNullable.cjs +2 -2
  248. package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
  249. package/_cjs/optics/Prism/api/just.cjs +2 -2
  250. package/_cjs/optics/Prism/api/just.cjs.map +1 -1
  251. package/_cjs/optics/Prism/definition.cjs +9 -9
  252. package/_cjs/optics/Prism/definition.cjs.map +1 -1
  253. package/_cjs/optics/Prism.cjs.map +1 -1
  254. package/_cjs/optics/Setter/definition.cjs +8 -13
  255. package/_cjs/optics/Setter/definition.cjs.map +1 -1
  256. package/_cjs/optics/Traversal/api/compose.cjs +8 -6
  257. package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
  258. package/_cjs/optics/Traversal/api/fromTraversable.cjs +2 -2
  259. package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
  260. package/_cjs/optics/Traversal/definition.cjs +12 -12
  261. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  262. package/_cjs/optics/Traversal.cjs.map +1 -1
  263. package/_cjs/typeclass/Align.cjs.map +1 -1
  264. package/_cjs/typeclass/Alt.cjs.map +1 -1
  265. package/_cjs/typeclass/Applicative.cjs.map +1 -1
  266. package/_cjs/typeclass/ApplicativeExcept.cjs +5 -10
  267. package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
  268. package/_cjs/typeclass/Apply.cjs +8 -8
  269. package/_cjs/typeclass/Apply.cjs.map +1 -1
  270. package/_cjs/typeclass/Chain.cjs +4 -4
  271. package/_cjs/typeclass/Chain.cjs.map +1 -1
  272. package/_cjs/typeclass/Eq/definition.cjs.map +1 -1
  273. package/_cjs/typeclass/Eq/derivations.cjs.map +1 -1
  274. package/_cjs/typeclass/Equatable/api.cjs.map +1 -1
  275. package/_cjs/typeclass/Equatable/definition.cjs.map +1 -1
  276. package/_cjs/typeclass/Equatable/fast-equals.cjs.map +1 -1
  277. package/_cjs/typeclass/Filterable.cjs.map +1 -1
  278. package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
  279. package/_cjs/typeclass/Foldable.cjs +1 -1
  280. package/_cjs/typeclass/Foldable.cjs.map +1 -1
  281. package/_cjs/typeclass/FoldableWithIndex.cjs +1 -1
  282. package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
  283. package/_cjs/typeclass/Functor.cjs.map +1 -1
  284. package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
  285. package/_cjs/typeclass/Guard/api.cjs +18 -10
  286. package/_cjs/typeclass/Guard/api.cjs.map +1 -1
  287. package/_cjs/typeclass/Guard/definition.cjs.map +1 -1
  288. package/_cjs/typeclass/Guard/derivations.cjs.map +1 -1
  289. package/_cjs/typeclass/Has.cjs +7 -5
  290. package/_cjs/typeclass/Has.cjs.map +1 -1
  291. package/_cjs/typeclass/HashEq.cjs.map +1 -1
  292. package/_cjs/typeclass/Hashable/definition.cjs.map +1 -1
  293. package/_cjs/typeclass/Hashable/hash.cjs.map +1 -1
  294. package/_cjs/typeclass/MonadExcept.cjs +1 -1
  295. package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
  296. package/_cjs/typeclass/Ord/api/contramap.cjs +7 -5
  297. package/_cjs/typeclass/Ord/api/contramap.cjs.map +1 -1
  298. package/_cjs/typeclass/Ord/api/max.cjs.map +1 -1
  299. package/_cjs/typeclass/Ord/api/min.cjs.map +1 -1
  300. package/_cjs/typeclass/Ord/definition.cjs.map +1 -1
  301. package/_cjs/typeclass/Ord/instances.cjs.map +1 -1
  302. package/_cjs/typeclass/Ordering.cjs.map +1 -1
  303. package/_cjs/typeclass/Semialign.cjs +7 -7
  304. package/_cjs/typeclass/Semialign.cjs.map +1 -1
  305. package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
  306. package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
  307. package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
  308. package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
  309. package/_cjs/typeclass/Showable/definition.cjs.map +1 -1
  310. package/_cjs/typeclass/Showable/show.cjs +107 -107
  311. package/_cjs/typeclass/Showable/show.cjs.map +1 -1
  312. package/_cjs/typeclass/Showable/styles.cjs.map +1 -1
  313. package/_cjs/typeclass/Showable/util.cjs +1 -1
  314. package/_cjs/typeclass/Showable/util.cjs.map +1 -1
  315. package/_cjs/typeclass/Traversable.cjs +1 -2
  316. package/_cjs/typeclass/Traversable.cjs.map +1 -1
  317. package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
  318. package/_cjs/typeclass/Witherable.cjs +3 -1
  319. package/_cjs/typeclass/Witherable.cjs.map +1 -1
  320. package/_cjs/typeclass/WitherableWithIndex.cjs +3 -1
  321. package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
  322. package/_cjs/util/AnsiFormat.cjs +11 -11
  323. package/_cjs/util/AnsiFormat.cjs.map +1 -1
  324. package/_cjs/util/PCGRandom.cjs.map +1 -1
  325. package/_cjs/util/assert.cjs.map +1 -1
  326. package/_cjs/util/pattern.cjs.map +1 -1
  327. package/_cjs/util/predicates.cjs.map +1 -1
  328. package/_cjs/util/rand/Random.cjs.map +1 -1
  329. package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs.map +1 -1
  330. package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs.map +1 -1
  331. package/_cjs/util/rand/distribution/UniformIntDistribution.cjs.map +1 -1
  332. package/_cjs/util/rand/distribution/internals/ArrayInt.cjs.map +1 -1
  333. package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs.map +1 -1
  334. package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs.map +1 -1
  335. package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
  336. package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
  337. package/_cjs/util/rand.cjs.map +1 -1
  338. package/_mjs/collection/Iterable/api/traverseConc.mjs +5 -5
  339. package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
  340. package/_mjs/collection/Iterable/api.mjs +465 -411
  341. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  342. package/_mjs/collection/Iterable/constructors.mjs +5 -5
  343. package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
  344. package/_mjs/collection/compat/Array/api.mjs +16 -12
  345. package/_mjs/collection/compat/Array/api.mjs.map +1 -1
  346. package/_mjs/collection/compat/Array/derivations.mjs +35 -19
  347. package/_mjs/collection/compat/Array/derivations.mjs.map +1 -1
  348. package/_mjs/collection/compat/ArrayLike/api.mjs +1 -1
  349. package/_mjs/collection/compat/ArrayLike/api.mjs.map +1 -1
  350. package/_mjs/collection/compat/Record/instances.mjs +34 -3
  351. package/_mjs/collection/compat/Record/instances.mjs.map +1 -1
  352. package/_mjs/collection/immutable/Conc/api/makeBy.mjs +1 -1
  353. package/_mjs/collection/immutable/Conc/api/makeBy.mjs.map +1 -1
  354. package/_mjs/collection/immutable/Conc/api.mjs +795 -697
  355. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  356. package/_mjs/collection/immutable/Conc/definition.mjs +53 -51
  357. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  358. package/_mjs/collection/immutable/Conc/derivations.mjs +10 -2
  359. package/_mjs/collection/immutable/Conc/derivations.mjs.map +1 -1
  360. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  361. package/_mjs/collection/immutable/Dictionary/api.mjs +47 -35
  362. package/_mjs/collection/immutable/Dictionary/api.mjs.map +1 -1
  363. package/_mjs/collection/immutable/HashMap/api.mjs +295 -217
  364. package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
  365. package/_mjs/collection/immutable/HashMap/definition.mjs +1 -1
  366. package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
  367. package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
  368. package/_mjs/collection/immutable/HashSet/api.mjs +206 -168
  369. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  370. package/_mjs/collection/immutable/HashSet/definition.mjs +1 -1
  371. package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
  372. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs +5 -3
  373. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -1
  374. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +5 -3
  375. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -1
  376. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +5 -3
  377. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -1
  378. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +13 -11
  379. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -1
  380. package/_mjs/collection/immutable/ImmutableArray/api.mjs +816 -629
  381. package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
  382. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs +9 -1
  383. package/_mjs/collection/immutable/ImmutableArray/derivations.mjs.map +1 -1
  384. package/_mjs/collection/immutable/ImmutableArray/instances.mjs +34 -34
  385. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
  386. package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
  387. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +301 -239
  388. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
  389. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
  390. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
  391. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs +12 -4
  392. package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs.map +1 -1
  393. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +2 -2
  394. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
  395. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs +13 -13
  396. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
  397. package/_mjs/collection/immutable/List/api/foldLeft.mjs +11 -9
  398. package/_mjs/collection/immutable/List/api/foldLeft.mjs.map +1 -1
  399. package/_mjs/collection/immutable/List/api.mjs +157 -133
  400. package/_mjs/collection/immutable/List/api.mjs.map +1 -1
  401. package/_mjs/collection/immutable/List.mjs.map +1 -1
  402. package/_mjs/collection/immutable/Queue/api.mjs +55 -39
  403. package/_mjs/collection/immutable/Queue/api.mjs.map +1 -1
  404. package/_mjs/collection/immutable/Queue/definition.mjs +1 -1
  405. package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
  406. package/_mjs/collection/immutable/RoseTree/api.mjs +50 -36
  407. package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -1
  408. package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
  409. package/_mjs/collection/immutable/SortedMap/api.mjs +398 -358
  410. package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
  411. package/_mjs/collection/immutable/Vector/api.mjs +650 -538
  412. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  413. package/_mjs/collection/immutable/Vector/definition.mjs +16 -14
  414. package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
  415. package/_mjs/collection/immutable/Vector/internal.mjs +40 -39
  416. package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
  417. package/_mjs/collection/mutable/HashMap.mjs +3 -5
  418. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  419. package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
  420. package/_mjs/collection/mutable/ListBuffer.mjs +2 -2
  421. package/_mjs/collection/mutable/ListBuffer.mjs.map +1 -1
  422. package/_mjs/collection/mutable/internal.mjs +0 -2
  423. package/_mjs/collection/mutable/internal.mjs.map +1 -1
  424. package/_mjs/collection/weak/IterableWeakMap.mjs +7 -7
  425. package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
  426. package/_mjs/collection/weak/IterableWeakSet.mjs +7 -7
  427. package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
  428. package/_mjs/control/Eval/api.mjs +40 -28
  429. package/_mjs/control/Eval/api.mjs.map +1 -1
  430. package/_mjs/control/Eval/instance.mjs +5 -5
  431. package/_mjs/control/Eval/instance.mjs.map +1 -1
  432. package/_mjs/control/Eval/run.mjs +1 -1
  433. package/_mjs/control/Eval/run.mjs.map +1 -1
  434. package/_mjs/control/Z/api.mjs +196 -128
  435. package/_mjs/control/Z/api.mjs.map +1 -1
  436. package/_mjs/control/Z/instances.mjs +4 -4
  437. package/_mjs/control/Z/instances.mjs.map +1 -1
  438. package/_mjs/control/Z/runtime.mjs +244 -234
  439. package/_mjs/control/Z/runtime.mjs.map +1 -1
  440. package/_mjs/data/Branded/definition.mjs.map +1 -1
  441. package/_mjs/data/Branded/derivations.mjs +3 -3
  442. package/_mjs/data/Branded/derivations.mjs.map +1 -1
  443. package/_mjs/data/CaseClass.mjs.map +1 -1
  444. package/_mjs/data/Cause/api/fold.mjs +19 -17
  445. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  446. package/_mjs/data/Cause/api/isEmpty.mjs +1 -1
  447. package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
  448. package/_mjs/data/Cause/api/linearize.mjs +8 -8
  449. package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
  450. package/_mjs/data/Cause/api/prettyPrint.mjs +1 -1
  451. package/_mjs/data/Cause/api/prettyPrint.mjs.map +1 -1
  452. package/_mjs/data/Cause/api.mjs +149 -129
  453. package/_mjs/data/Cause/api.mjs.map +1 -1
  454. package/_mjs/data/Cause/definition.mjs +18 -18
  455. package/_mjs/data/Cause/definition.mjs.map +1 -1
  456. package/_mjs/data/Cause.mjs.map +1 -1
  457. package/_mjs/data/Const/api.mjs +6 -4
  458. package/_mjs/data/Const/api.mjs.map +1 -1
  459. package/_mjs/data/Const/instances.mjs +4 -4
  460. package/_mjs/data/Const/instances.mjs.map +1 -1
  461. package/_mjs/data/Datum/api.mjs +220 -179
  462. package/_mjs/data/Datum/api.mjs.map +1 -1
  463. package/_mjs/data/Datum/definition.mjs.map +1 -1
  464. package/_mjs/data/DatumEither/api.mjs +163 -132
  465. package/_mjs/data/DatumEither/api.mjs.map +1 -1
  466. package/_mjs/data/DecodeError/definition.mjs +14 -14
  467. package/_mjs/data/DecodeError/definition.mjs.map +1 -1
  468. package/_mjs/data/Decoder/api.mjs +9 -7
  469. package/_mjs/data/Decoder/api.mjs.map +1 -1
  470. package/_mjs/data/Duration/api.mjs +16 -10
  471. package/_mjs/data/Duration/api.mjs.map +1 -1
  472. package/_mjs/data/Either/api/align.mjs +8 -2
  473. package/_mjs/data/Either/api/align.mjs.map +1 -1
  474. package/_mjs/data/Either/api/alignWith.mjs +13 -11
  475. package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
  476. package/_mjs/data/Either/api.mjs +175 -136
  477. package/_mjs/data/Either/api.mjs.map +1 -1
  478. package/_mjs/data/Either/constructors.mjs +7 -5
  479. package/_mjs/data/Either/constructors.mjs.map +1 -1
  480. package/_mjs/data/Either/destructors.mjs +15 -13
  481. package/_mjs/data/Either/destructors.mjs.map +1 -1
  482. package/_mjs/data/Either/instances.mjs +9 -9
  483. package/_mjs/data/Either/instances.mjs.map +1 -1
  484. package/_mjs/data/EitherT/api.mjs +8 -8
  485. package/_mjs/data/EitherT/api.mjs.map +1 -1
  486. package/_mjs/data/Encoder/api.mjs +102 -0
  487. package/_mjs/data/Encoder/api.mjs.map +1 -0
  488. package/_mjs/data/Encoder/definition.mjs +15 -0
  489. package/_mjs/data/Encoder/definition.mjs.map +1 -0
  490. package/_mjs/data/Encoder.mjs +4 -0
  491. package/_mjs/data/Encoder.mjs.map +1 -0
  492. package/_mjs/data/Environment/api.mjs +45 -33
  493. package/_mjs/data/Environment/api.mjs.map +1 -1
  494. package/_mjs/data/Environment/definition.mjs.map +1 -1
  495. package/_mjs/data/EnvironmentPatch.mjs +188 -0
  496. package/_mjs/data/EnvironmentPatch.mjs.map +1 -0
  497. package/_mjs/data/ExecutionStrategy.mjs +19 -27
  498. package/_mjs/data/ExecutionStrategy.mjs.map +1 -1
  499. package/_mjs/data/Exit/api.mjs +140 -108
  500. package/_mjs/data/Exit/api.mjs.map +1 -1
  501. package/_mjs/data/Exit/constructors.mjs +3 -3
  502. package/_mjs/data/Exit/constructors.mjs.map +1 -1
  503. package/_mjs/data/FiberId/api.mjs +22 -20
  504. package/_mjs/data/FiberId/api.mjs.map +1 -1
  505. package/_mjs/data/FiberId/constructors.mjs.map +1 -1
  506. package/_mjs/data/Identity/api.mjs +21 -13
  507. package/_mjs/data/Identity/api.mjs.map +1 -1
  508. package/_mjs/data/Identity/instances.mjs +4 -4
  509. package/_mjs/data/Identity/instances.mjs.map +1 -1
  510. package/_mjs/data/Interval.mjs +38 -28
  511. package/_mjs/data/Interval.mjs.map +1 -1
  512. package/_mjs/data/Intervals.mjs +35 -27
  513. package/_mjs/data/Intervals.mjs.map +1 -1
  514. package/_mjs/data/Maybe/api.mjs +141 -106
  515. package/_mjs/data/Maybe/api.mjs.map +1 -1
  516. package/_mjs/data/Maybe/constructors.mjs +1 -1
  517. package/_mjs/data/Maybe/constructors.mjs.map +1 -1
  518. package/_mjs/data/Maybe/definition.mjs.map +1 -1
  519. package/_mjs/data/Maybe/destructors.mjs +8 -6
  520. package/_mjs/data/Maybe/destructors.mjs.map +1 -1
  521. package/_mjs/data/Maybe/instances.mjs +12 -12
  522. package/_mjs/data/Maybe/instances.mjs.map +1 -1
  523. package/_mjs/data/Predicate/api.mjs +10 -8
  524. package/_mjs/data/Predicate/api.mjs.map +1 -1
  525. package/_mjs/data/Refinement/api.mjs +15 -9
  526. package/_mjs/data/Refinement/api.mjs.map +1 -1
  527. package/_mjs/data/Struct/api.mjs +56 -44
  528. package/_mjs/data/Struct/api.mjs.map +1 -1
  529. package/_mjs/data/Tag/constructors.mjs +3 -2
  530. package/_mjs/data/Tag/constructors.mjs.map +1 -1
  531. package/_mjs/data/Tag/definition.mjs +0 -2
  532. package/_mjs/data/Tag/definition.mjs.map +1 -1
  533. package/_mjs/data/These/api.mjs +187 -169
  534. package/_mjs/data/These/api.mjs.map +1 -1
  535. package/_mjs/data/These/constructors.mjs +1 -1
  536. package/_mjs/data/These/constructors.mjs.map +1 -1
  537. package/_mjs/data/These/destructors.mjs +35 -31
  538. package/_mjs/data/These/destructors.mjs.map +1 -1
  539. package/_mjs/data/These/instances.mjs +1 -1
  540. package/_mjs/data/These/instances.mjs.map +1 -1
  541. package/_mjs/data/Trace/api.mjs +6 -4
  542. package/_mjs/data/Trace/api.mjs.map +1 -1
  543. package/_mjs/data/Zipped.mjs.map +1 -1
  544. package/_mjs/data/function/api.mjs +5 -3
  545. package/_mjs/data/function/api.mjs.map +1 -1
  546. package/_mjs/data/function/pipe.mjs +7 -0
  547. package/_mjs/data/function/pipe.mjs.map +1 -1
  548. package/_mjs/data/string/api.mjs +46 -66
  549. package/_mjs/data/string/api.mjs.map +1 -1
  550. package/_mjs/global/api.mjs +4 -2
  551. package/_mjs/global/api.mjs.map +1 -1
  552. package/_mjs/internal/AtomicBoolean.mjs.map +1 -1
  553. package/_mjs/internal/AtomicNumber.mjs.map +1 -1
  554. package/_mjs/internal/AtomicReference.mjs.map +1 -1
  555. package/_mjs/internal/Stack.mjs +1 -1
  556. package/_mjs/internal/Stack.mjs.map +1 -1
  557. package/_mjs/optics/At/api.mjs +1 -1
  558. package/_mjs/optics/At/api.mjs.map +1 -1
  559. package/_mjs/optics/At/definition.mjs +2 -2
  560. package/_mjs/optics/At/definition.mjs.map +1 -1
  561. package/_mjs/optics/Fold/definition.mjs +2 -3
  562. package/_mjs/optics/Fold/definition.mjs.map +1 -1
  563. package/_mjs/optics/Getter/definition.mjs +1 -2
  564. package/_mjs/optics/Getter/definition.mjs.map +1 -1
  565. package/_mjs/optics/Index/api.mjs +4 -4
  566. package/_mjs/optics/Index/api.mjs.map +1 -1
  567. package/_mjs/optics/Index/definition.mjs +1 -1
  568. package/_mjs/optics/Index/definition.mjs.map +1 -1
  569. package/_mjs/optics/Iso/api.mjs +8 -6
  570. package/_mjs/optics/Iso/api.mjs.map +1 -1
  571. package/_mjs/optics/Iso/definition.mjs +9 -9
  572. package/_mjs/optics/Iso/definition.mjs.map +1 -1
  573. package/_mjs/optics/Lens/api.mjs +49 -39
  574. package/_mjs/optics/Lens/api.mjs.map +1 -1
  575. package/_mjs/optics/Lens/definition.mjs +7 -7
  576. package/_mjs/optics/Lens/definition.mjs.map +1 -1
  577. package/_mjs/optics/Optional/api/compose.mjs +8 -6
  578. package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
  579. package/_mjs/optics/Optional/definition.mjs +8 -10
  580. package/_mjs/optics/Optional/definition.mjs.map +1 -1
  581. package/_mjs/optics/Optional.mjs.map +1 -1
  582. package/_mjs/optics/Prism/api/compose.mjs +8 -6
  583. package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
  584. package/_mjs/optics/Prism/api/fromNullable.mjs +2 -2
  585. package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
  586. package/_mjs/optics/Prism/api/just.mjs +2 -2
  587. package/_mjs/optics/Prism/api/just.mjs.map +1 -1
  588. package/_mjs/optics/Prism/definition.mjs +6 -6
  589. package/_mjs/optics/Prism/definition.mjs.map +1 -1
  590. package/_mjs/optics/Prism.mjs.map +1 -1
  591. package/_mjs/optics/Setter/definition.mjs +5 -10
  592. package/_mjs/optics/Setter/definition.mjs.map +1 -1
  593. package/_mjs/optics/Traversal/api/compose.mjs +7 -5
  594. package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
  595. package/_mjs/optics/Traversal/api/fromTraversable.mjs +2 -2
  596. package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
  597. package/_mjs/optics/Traversal/definition.mjs +9 -9
  598. package/_mjs/optics/Traversal/definition.mjs.map +1 -1
  599. package/_mjs/optics/Traversal.mjs.map +1 -1
  600. package/_mjs/typeclass/Align.mjs.map +1 -1
  601. package/_mjs/typeclass/Alt.mjs.map +1 -1
  602. package/_mjs/typeclass/Applicative.mjs.map +1 -1
  603. package/_mjs/typeclass/ApplicativeExcept.mjs +6 -10
  604. package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
  605. package/_mjs/typeclass/Apply.mjs +9 -9
  606. package/_mjs/typeclass/Apply.mjs.map +1 -1
  607. package/_mjs/typeclass/Chain.mjs +5 -5
  608. package/_mjs/typeclass/Chain.mjs.map +1 -1
  609. package/_mjs/typeclass/Eq/definition.mjs.map +1 -1
  610. package/_mjs/typeclass/Eq/derivations.mjs.map +1 -1
  611. package/_mjs/typeclass/Equatable/api.mjs.map +1 -1
  612. package/_mjs/typeclass/Equatable/definition.mjs.map +1 -1
  613. package/_mjs/typeclass/Equatable/fast-equals.mjs.map +1 -1
  614. package/_mjs/typeclass/Filterable.mjs.map +1 -1
  615. package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
  616. package/_mjs/typeclass/Foldable.mjs +1 -1
  617. package/_mjs/typeclass/Foldable.mjs.map +1 -1
  618. package/_mjs/typeclass/FoldableWithIndex.mjs +1 -1
  619. package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
  620. package/_mjs/typeclass/Functor.mjs.map +1 -1
  621. package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
  622. package/_mjs/typeclass/Guard/api.mjs +18 -10
  623. package/_mjs/typeclass/Guard/api.mjs.map +1 -1
  624. package/_mjs/typeclass/Guard/definition.mjs.map +1 -1
  625. package/_mjs/typeclass/Guard/derivations.mjs.map +1 -1
  626. package/_mjs/typeclass/Has.mjs +7 -5
  627. package/_mjs/typeclass/Has.mjs.map +1 -1
  628. package/_mjs/typeclass/HashEq.mjs.map +1 -1
  629. package/_mjs/typeclass/Hashable/definition.mjs.map +1 -1
  630. package/_mjs/typeclass/Hashable/hash.mjs.map +1 -1
  631. package/_mjs/typeclass/MonadExcept.mjs +1 -1
  632. package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
  633. package/_mjs/typeclass/Ord/api/contramap.mjs +7 -5
  634. package/_mjs/typeclass/Ord/api/contramap.mjs.map +1 -1
  635. package/_mjs/typeclass/Ord/api/max.mjs.map +1 -1
  636. package/_mjs/typeclass/Ord/api/min.mjs.map +1 -1
  637. package/_mjs/typeclass/Ord/definition.mjs.map +1 -1
  638. package/_mjs/typeclass/Ord/instances.mjs.map +1 -1
  639. package/_mjs/typeclass/Ordering.mjs.map +1 -1
  640. package/_mjs/typeclass/Semialign.mjs +7 -7
  641. package/_mjs/typeclass/Semialign.mjs.map +1 -1
  642. package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
  643. package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
  644. package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
  645. package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
  646. package/_mjs/typeclass/Showable/definition.mjs.map +1 -1
  647. package/_mjs/typeclass/Showable/show.mjs +107 -107
  648. package/_mjs/typeclass/Showable/show.mjs.map +1 -1
  649. package/_mjs/typeclass/Showable/styles.mjs.map +1 -1
  650. package/_mjs/typeclass/Showable/util.mjs +1 -1
  651. package/_mjs/typeclass/Showable/util.mjs.map +1 -1
  652. package/_mjs/typeclass/Traversable.mjs +1 -2
  653. package/_mjs/typeclass/Traversable.mjs.map +1 -1
  654. package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
  655. package/_mjs/typeclass/Witherable.mjs +2 -1
  656. package/_mjs/typeclass/Witherable.mjs.map +1 -1
  657. package/_mjs/typeclass/WitherableWithIndex.mjs +2 -1
  658. package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
  659. package/_mjs/util/AnsiFormat.mjs +11 -11
  660. package/_mjs/util/AnsiFormat.mjs.map +1 -1
  661. package/_mjs/util/PCGRandom.mjs.map +1 -1
  662. package/_mjs/util/assert.mjs.map +1 -1
  663. package/_mjs/util/pattern.mjs.map +1 -1
  664. package/_mjs/util/predicates.mjs.map +1 -1
  665. package/_mjs/util/rand/Random.mjs.map +1 -1
  666. package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs.map +1 -1
  667. package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs.map +1 -1
  668. package/_mjs/util/rand/distribution/UniformIntDistribution.mjs.map +1 -1
  669. package/_mjs/util/rand/distribution/internals/ArrayInt.mjs.map +1 -1
  670. package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs.map +1 -1
  671. package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs.map +1 -1
  672. package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
  673. package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
  674. package/_mjs/util/rand.mjs.map +1 -1
  675. package/_src/collection/Iterable/api/traverseConc.ts +3 -3
  676. package/_src/collection/Iterable/api.ts +445 -408
  677. package/_src/collection/Iterable/constructors.ts +1 -1
  678. package/_src/collection/compat/Array/api.ts +16 -13
  679. package/_src/collection/compat/Array/derivations.ts +27 -1
  680. package/_src/collection/compat/Record/instances.ts +51 -2
  681. package/_src/collection/immutable/Conc/api.ts +716 -607
  682. package/_src/collection/immutable/Conc/definition.ts +60 -68
  683. package/_src/collection/immutable/Conc/derivations.ts +13 -0
  684. package/_src/collection/immutable/Conc.ts +0 -1
  685. package/_src/collection/immutable/Dictionary/api.ts +44 -32
  686. package/_src/collection/immutable/HashMap/api.ts +338 -224
  687. package/_src/collection/immutable/HashMap/internal.ts +3 -7
  688. package/_src/collection/immutable/HashSet/api.ts +193 -158
  689. package/_src/collection/immutable/ImmutableArray/api/chunksOf.ts +5 -3
  690. package/_src/collection/immutable/ImmutableArray/api/slice.ts +5 -3
  691. package/_src/collection/immutable/ImmutableArray/api/splitAt.ts +5 -3
  692. package/_src/collection/immutable/ImmutableArray/api/splitWhere.ts +13 -14
  693. package/_src/collection/immutable/ImmutableArray/api.ts +870 -722
  694. package/_src/collection/immutable/ImmutableArray/derivations.ts +13 -0
  695. package/_src/collection/immutable/ImmutableArray/instances.ts +54 -73
  696. package/_src/collection/immutable/ImmutableArray.ts +0 -1
  697. package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +311 -273
  698. package/_src/collection/immutable/ImmutableNonEmptyArray/constructors.ts +19 -4
  699. package/_src/collection/immutable/ImmutableNonEmptyArray/definition.ts +0 -1
  700. package/_src/collection/immutable/ImmutableNonEmptyArray/derivations.ts +13 -0
  701. package/_src/collection/immutable/ImmutableNonEmptyArray/instances.ts +22 -23
  702. package/_src/collection/immutable/List/api/foldLeft.ts +11 -9
  703. package/_src/collection/immutable/List/api.ts +147 -133
  704. package/_src/collection/immutable/List.ts +0 -1
  705. package/_src/collection/immutable/Queue/api.ts +53 -37
  706. package/_src/collection/immutable/Queue/definition.ts +0 -1
  707. package/_src/collection/immutable/RoseTree/api.ts +38 -32
  708. package/_src/collection/immutable/RoseTree/definition.ts +2 -0
  709. package/_src/collection/immutable/SortedMap/api.ts +364 -332
  710. package/_src/collection/immutable/Vector/api.ts +608 -482
  711. package/_src/collection/immutable/Vector/definition.ts +11 -12
  712. package/_src/collection/immutable/Vector/internal.ts +37 -38
  713. package/_src/collection/mutable/HashMap.ts +1 -4
  714. package/_src/collection/mutable/HashSet.ts +1 -2
  715. package/_src/collection/mutable/ListBuffer.ts +1 -1
  716. package/_src/collection/mutable/internal.ts +0 -2
  717. package/_src/collection/weak/IterableWeakMap.ts +11 -7
  718. package/_src/collection/weak/IterableWeakSet.ts +10 -5
  719. package/_src/control/Eval/api.ts +35 -19
  720. package/_src/control/Eval/instance.ts +5 -5
  721. package/_src/control/Z/api.ts +191 -208
  722. package/_src/control/Z/instances.ts +4 -5
  723. package/_src/control/Z/runtime.ts +190 -189
  724. package/_src/data/Branded/definition.ts +11 -12
  725. package/_src/data/Branded/derivations.ts +2 -2
  726. package/_src/data/CaseClass.ts +4 -1
  727. package/_src/data/Cause/api/fold.ts +13 -14
  728. package/_src/data/Cause/api.ts +125 -105
  729. package/_src/data/Cause.ts +0 -1
  730. package/_src/data/Const/api.ts +6 -4
  731. package/_src/data/Const/instances.ts +3 -3
  732. package/_src/data/Datum/api.ts +229 -197
  733. package/_src/data/Datum/definition.ts +2 -5
  734. package/_src/data/DatumEither/api.ts +208 -193
  735. package/_src/data/Decoder/api.ts +5 -3
  736. package/_src/data/Duration/api.ts +19 -15
  737. package/_src/data/Either/api/align.ts +7 -2
  738. package/_src/data/Either/api/alignWith.ts +13 -15
  739. package/_src/data/Either/api.ts +141 -119
  740. package/_src/data/Either/constructors.ts +12 -10
  741. package/_src/data/Either/destructors.ts +11 -9
  742. package/_src/data/Either/instances.ts +24 -20
  743. package/_src/data/EitherT/api.ts +43 -49
  744. package/_src/data/Encoder/api.ts +123 -0
  745. package/_src/data/Encoder/definition.ts +12 -0
  746. package/_src/data/Encoder.ts +4 -0
  747. package/_src/data/Environment/api.ts +52 -44
  748. package/_src/data/Environment/definition.ts +6 -0
  749. package/_src/data/EnvironmentPatch.ts +137 -0
  750. package/_src/data/ExecutionStrategy.ts +14 -24
  751. package/_src/data/Exit/api.ts +104 -73
  752. package/_src/data/Exit/constructors.ts +2 -2
  753. package/_src/data/FiberId/api.ts +19 -17
  754. package/_src/data/FiberId/constructors.ts +1 -2
  755. package/_src/data/Identity/api.ts +20 -12
  756. package/_src/data/Identity/instances.ts +4 -7
  757. package/_src/data/Interval.ts +39 -29
  758. package/_src/data/Intervals.ts +31 -23
  759. package/_src/data/Maybe/api.ts +112 -79
  760. package/_src/data/Maybe/constructors.ts +3 -3
  761. package/_src/data/Maybe/definition.ts +11 -1
  762. package/_src/data/Maybe/destructors.ts +6 -4
  763. package/_src/data/Maybe/instances.ts +10 -21
  764. package/_src/data/Predicate/api.ts +14 -8
  765. package/_src/data/Refinement/api.ts +19 -13
  766. package/_src/data/Struct/api.ts +75 -55
  767. package/_src/data/Tag/constructors.ts +1 -2
  768. package/_src/data/Tag/definition.ts +0 -1
  769. package/_src/data/These/api.ts +114 -114
  770. package/_src/data/These/destructors.ts +23 -24
  771. package/_src/data/Trace/api.ts +5 -3
  772. package/_src/data/Zipped.ts +3 -4
  773. package/_src/data/function/api.ts +6 -7
  774. package/_src/data/function/pipe.ts +9 -1
  775. package/_src/data/string/api.ts +40 -60
  776. package/_src/data.ts +2 -1
  777. package/_src/global/api.ts +7 -12
  778. package/_src/global.ts +8 -0
  779. package/_src/internal/AtomicBoolean.ts +0 -1
  780. package/_src/internal/AtomicNumber.ts +0 -7
  781. package/_src/internal/AtomicReference.ts +0 -4
  782. package/_src/internal/Stack.ts +1 -7
  783. package/_src/optics/At/definition.ts +5 -3
  784. package/_src/optics/Fold/definition.ts +3 -10
  785. package/_src/optics/Getter/definition.ts +1 -2
  786. package/_src/optics/Index/definition.ts +1 -1
  787. package/_src/optics/Iso/api.ts +8 -6
  788. package/_src/optics/Iso/definition.ts +3 -3
  789. package/_src/optics/Lens/api.ts +44 -42
  790. package/_src/optics/Lens/definition.ts +5 -5
  791. package/_src/optics/Optional/api/compose.ts +9 -9
  792. package/_src/optics/Optional/definition.ts +9 -16
  793. package/_src/optics/Optional.ts +0 -1
  794. package/_src/optics/Prism/api/compose.ts +9 -6
  795. package/_src/optics/Prism/definition.ts +3 -3
  796. package/_src/optics/Prism.ts +0 -1
  797. package/_src/optics/Setter/definition.ts +3 -23
  798. package/_src/optics/Traversal/api/compose.ts +7 -8
  799. package/_src/optics/Traversal/api/fromTraversable.ts +1 -1
  800. package/_src/optics/Traversal/definition.ts +10 -15
  801. package/_src/optics/Traversal.ts +0 -1
  802. package/_src/typeclass/Align.ts +0 -3
  803. package/_src/typeclass/Alt.ts +2 -1
  804. package/_src/typeclass/Applicative.ts +0 -1
  805. package/_src/typeclass/ApplicativeExcept.ts +15 -10
  806. package/_src/typeclass/Apply.ts +30 -33
  807. package/_src/typeclass/Chain.ts +9 -12
  808. package/_src/typeclass/Eq/definition.ts +0 -3
  809. package/_src/typeclass/Eq/derivations.ts +0 -2
  810. package/_src/typeclass/Equatable/api.ts +0 -2
  811. package/_src/typeclass/Equatable/definition.ts +0 -4
  812. package/_src/typeclass/Equatable/fast-equals.ts +11 -93
  813. package/_src/typeclass/Filterable.ts +19 -13
  814. package/_src/typeclass/FilterableWithIndex.ts +19 -13
  815. package/_src/typeclass/Foldable.ts +7 -10
  816. package/_src/typeclass/FoldableWithIndex.ts +7 -10
  817. package/_src/typeclass/Functor.ts +6 -4
  818. package/_src/typeclass/FunctorWithIndex.ts +3 -2
  819. package/_src/typeclass/Guard/api.ts +21 -16
  820. package/_src/typeclass/Guard/definition.ts +0 -3
  821. package/_src/typeclass/Guard/derivations.ts +5 -6
  822. package/_src/typeclass/Has.ts +6 -4
  823. package/_src/typeclass/HashEq.ts +0 -7
  824. package/_src/typeclass/Hashable/definition.ts +0 -4
  825. package/_src/typeclass/Hashable/hash.ts +0 -26
  826. package/_src/typeclass/MonadExcept.ts +1 -1
  827. package/_src/typeclass/Ord/api/contramap.ts +7 -6
  828. package/_src/typeclass/Ord/api/max.ts +0 -1
  829. package/_src/typeclass/Ord/api/min.ts +0 -1
  830. package/_src/typeclass/Ord/definition.ts +0 -4
  831. package/_src/typeclass/Ord/instances.ts +0 -2
  832. package/_src/typeclass/Ordering.ts +2 -0
  833. package/_src/typeclass/Semialign.ts +43 -32
  834. package/_src/typeclass/Semigroup/api.ts +0 -2
  835. package/_src/typeclass/Semigroup/definition.ts +0 -4
  836. package/_src/typeclass/Semigroup/derivations.ts +0 -2
  837. package/_src/typeclass/Semimonoidal.ts +3 -2
  838. package/_src/typeclass/Showable/definition.ts +0 -6
  839. package/_src/typeclass/Showable/show.ts +1 -57
  840. package/_src/typeclass/Showable/styles.ts +0 -8
  841. package/_src/typeclass/Showable/util.ts +22 -57
  842. package/_src/typeclass/Traversable.ts +13 -18
  843. package/_src/typeclass/TraversableWithIndex.ts +5 -7
  844. package/_src/typeclass/Witherable.ts +21 -13
  845. package/_src/typeclass/WitherableWithIndex.ts +26 -17
  846. package/_src/typeclass/builtin/Symbol.ts +0 -1
  847. package/_src/types/extractions.ts +12 -3
  848. package/_src/types/utility.ts +3 -5
  849. package/_src/util/AnsiFormat.ts +0 -25
  850. package/_src/util/PCGRandom.ts +4 -9
  851. package/_src/util/assert.ts +1 -2
  852. package/_src/util/pattern.ts +91 -12
  853. package/_src/util/predicates.ts +3 -1
  854. package/_src/util/rand/Random.ts +12 -16
  855. package/_src/util/rand/distribution/Distribution.ts +0 -1
  856. package/_src/util/rand/distribution/UniformArrayIntDistribution.ts +0 -3
  857. package/_src/util/rand/distribution/UniformBigIntDistribution.ts +0 -5
  858. package/_src/util/rand/distribution/UniformIntDistribution.ts +0 -7
  859. package/_src/util/rand/distribution/internals/ArrayInt.ts +3 -13
  860. package/_src/util/rand/distribution/internals/UniformArrayIntDistributionInternal.ts +0 -3
  861. package/_src/util/rand/distribution/internals/UniformIntDistributionInternal.ts +0 -4
  862. package/_src/util/rand/generator/MersenneTwister.ts +6 -29
  863. package/_src/util/rand/generator/RandomGenerator.ts +0 -3
  864. package/_src/util/rand.ts +0 -2
  865. package/collection/Iterable/api/traverseConc.d.ts +2 -2
  866. package/collection/Iterable/api.d.ts +64 -64
  867. package/collection/Iterable/constructors.d.ts +1 -1
  868. package/collection/compat/Array/api.d.ts +6 -6
  869. package/collection/compat/Array/derivations.d.ts +11 -0
  870. package/collection/compat/Record/instances.d.ts +30 -6
  871. package/collection/immutable/Conc/api.d.ts +108 -105
  872. package/collection/immutable/Conc/definition.d.ts +2 -2
  873. package/collection/immutable/Conc/derivations.d.ts +6 -0
  874. package/collection/immutable/Dictionary/api.d.ts +12 -12
  875. package/collection/immutable/HashMap/api.d.ts +76 -70
  876. package/collection/immutable/HashSet/api.d.ts +45 -41
  877. package/collection/immutable/ImmutableArray/api/chunksOf.d.ts +2 -2
  878. package/collection/immutable/ImmutableArray/api/slice.d.ts +2 -2
  879. package/collection/immutable/ImmutableArray/api/splitAt.d.ts +2 -2
  880. package/collection/immutable/ImmutableArray/api/splitWhere.d.ts +3 -3
  881. package/collection/immutable/ImmutableArray/api.d.ts +206 -206
  882. package/collection/immutable/ImmutableArray/derivations.d.ts +6 -0
  883. package/collection/immutable/ImmutableNonEmptyArray/api.d.ts +64 -63
  884. package/collection/immutable/ImmutableNonEmptyArray/derivations.d.ts +6 -0
  885. package/collection/immutable/List/api/foldLeft.d.ts +2 -2
  886. package/collection/immutable/List/api.d.ts +24 -24
  887. package/collection/immutable/Queue/api.d.ts +16 -16
  888. package/collection/immutable/RoseTree/api.d.ts +14 -14
  889. package/collection/immutable/SortedMap/api.d.ts +41 -41
  890. package/collection/immutable/Vector/api.d.ts +121 -117
  891. package/collection/immutable/Vector/definition.d.ts +2 -2
  892. package/collection/immutable/Vector/internal.d.ts +2 -2
  893. package/collection/mutable/ListBuffer.d.ts +1 -1
  894. package/control/Eval/api.d.ts +12 -12
  895. package/control/Z/api.d.ts +68 -68
  896. package/control/Z/runtime.d.ts +10 -10
  897. package/data/Branded/derivations.d.ts +2 -2
  898. package/data/Cause/api/fold.d.ts +3 -3
  899. package/data/Cause/api.d.ts +20 -20
  900. package/data/Const/api.d.ts +3 -3
  901. package/data/Datum/api.d.ts +43 -41
  902. package/data/DatumEither/api.d.ts +48 -46
  903. package/data/Decoder/api.d.ts +2 -2
  904. package/data/Duration/api.d.ts +7 -7
  905. package/data/Either/api/align.d.ts +5 -1
  906. package/data/Either/api/alignWith.d.ts +2 -2
  907. package/data/Either/api.d.ts +40 -46
  908. package/data/Either/constructors.d.ts +6 -6
  909. package/data/Either/destructors.d.ts +2 -2
  910. package/data/EitherT/api.d.ts +6 -6
  911. package/data/Encoder/api.d.ts +73 -0
  912. package/data/Encoder/definition.d.ts +12 -0
  913. package/data/Encoder.d.ts +2 -0
  914. package/data/Environment/api.d.ts +14 -14
  915. package/data/Environment/definition.d.ts +4 -0
  916. package/data/EnvironmentPatch.d.ts +73 -0
  917. package/data/ExecutionStrategy.d.ts +1 -6
  918. package/data/Exit/api.d.ts +32 -32
  919. package/data/Exit/constructors.d.ts +2 -2
  920. package/data/FiberId/api.d.ts +2 -2
  921. package/data/Identity/api.d.ts +8 -8
  922. package/data/Interval.d.ts +11 -11
  923. package/data/Intervals.d.ts +11 -11
  924. package/data/Maybe/api.d.ts +36 -37
  925. package/data/Maybe/constructors.d.ts +2 -2
  926. package/data/Maybe/definition.d.ts +7 -3
  927. package/data/Maybe/destructors.d.ts +2 -2
  928. package/data/Predicate/api.d.ts +5 -5
  929. package/data/Refinement/api.d.ts +9 -9
  930. package/data/Struct/api.d.ts +13 -23
  931. package/data/Tag/constructors.d.ts +1 -2
  932. package/data/Tag/definition.d.ts +0 -1
  933. package/data/These/api.d.ts +18 -22
  934. package/data/These/destructors.d.ts +4 -4
  935. package/data/Trace/api.d.ts +2 -2
  936. package/data/function/api.d.ts +3 -3
  937. package/data/function/pipe.d.ts +7 -1
  938. package/data/string/api.d.ts +9 -49
  939. package/data.d.ts +2 -1
  940. package/global/api.d.ts +3 -3
  941. package/global.d.ts +8 -0
  942. package/internal/Stack.d.ts +1 -1
  943. package/optics/At/definition.d.ts +1 -1
  944. package/optics/Fold/definition.d.ts +2 -6
  945. package/optics/Getter/definition.d.ts +1 -1
  946. package/optics/Index/definition.d.ts +1 -1
  947. package/optics/Iso/api.d.ts +2 -2
  948. package/optics/Iso/definition.d.ts +2 -2
  949. package/optics/Lens/api.d.ts +10 -10
  950. package/optics/Lens/definition.d.ts +4 -4
  951. package/optics/Optional/api/compose.d.ts +2 -2
  952. package/optics/Optional/definition.d.ts +4 -8
  953. package/optics/Prism/api/compose.d.ts +2 -2
  954. package/optics/Prism/definition.d.ts +2 -2
  955. package/optics/Setter/definition.d.ts +2 -14
  956. package/optics/Traversal/api/compose.d.ts +2 -2
  957. package/optics/Traversal/definition.d.ts +4 -4
  958. package/package.json +1 -1
  959. package/typeclass/Alt.d.ts +1 -1
  960. package/typeclass/ApplicativeExcept.d.ts +2 -6
  961. package/typeclass/Apply.d.ts +5 -5
  962. package/typeclass/Chain.d.ts +4 -4
  963. package/typeclass/Filterable.d.ts +6 -6
  964. package/typeclass/FilterableWithIndex.d.ts +6 -6
  965. package/typeclass/Foldable.d.ts +4 -4
  966. package/typeclass/FoldableWithIndex.d.ts +4 -4
  967. package/typeclass/Functor.d.ts +2 -2
  968. package/typeclass/FunctorWithIndex.d.ts +1 -1
  969. package/typeclass/Guard/api.d.ts +7 -7
  970. package/typeclass/Has.d.ts +3 -3
  971. package/typeclass/Ord/api/contramap.d.ts +2 -2
  972. package/typeclass/Semialign.d.ts +14 -14
  973. package/typeclass/Semimonoidal.d.ts +1 -1
  974. package/typeclass/Traversable.d.ts +4 -6
  975. package/typeclass/TraversableWithIndex.d.ts +2 -2
  976. package/typeclass/Witherable.d.ts +3 -3
  977. package/typeclass/WitherableWithIndex.d.ts +5 -5
  978. package/types/extractions.d.ts +10 -6
  979. package/util/assert.d.ts +1 -1
  980. package/_cjs/data/Patch/api.cjs.map +0 -1
  981. package/_cjs/data/Patch/definition.cjs +0 -88
  982. package/_cjs/data/Patch/definition.cjs.map +0 -1
  983. package/_cjs/data/Patch.cjs.map +0 -1
  984. package/_mjs/data/Patch/api.mjs +0 -112
  985. package/_mjs/data/Patch/api.mjs.map +0 -1
  986. package/_mjs/data/Patch/definition.mjs +0 -61
  987. package/_mjs/data/Patch/definition.mjs.map +0 -1
  988. package/_mjs/data/Patch.mjs +0 -4
  989. package/_mjs/data/Patch.mjs.map +0 -1
  990. package/_src/data/Patch/api.ts +0 -75
  991. package/_src/data/Patch/definition.ts +0 -58
  992. package/_src/data/Patch.ts +0 -4
  993. package/data/Patch/api.d.ts +0 -24
  994. package/data/Patch/definition.d.ts +0 -44
  995. package/data/Patch.d.ts +0 -2
@@ -1,28 +1,21 @@
1
1
  import { AtomicReference } from "./AtomicReference.js";
2
-
3
2
  export class AtomicNumber extends AtomicReference<number> {
4
3
  constructor(n: number) {
5
4
  super(n);
6
-
7
5
  this.incrementAndGet = this.incrementAndGet.bind(this);
8
6
  this.decrementAndGet = this.decrementAndGet.bind(this);
9
7
  }
10
-
11
8
  incrementAndGet() {
12
9
  this.set(this.get + 1);
13
10
  return this.get;
14
11
  }
15
-
16
12
  decrementAndGet() {
17
13
  this.set(this.get - 1);
18
14
  return this.get;
19
15
  }
20
-
21
16
  getAndIncrement(): number {
22
17
  const ret = this.get;
23
-
24
18
  this.set(this.get + 1);
25
-
26
19
  return ret;
27
20
  }
28
21
  }
@@ -3,15 +3,12 @@ export class AtomicReference<A> {
3
3
  constructor(readonly initial: A) {
4
4
  this.current = initial;
5
5
  }
6
-
7
6
  get get() {
8
7
  return this.current;
9
8
  }
10
-
11
9
  set(value: A) {
12
10
  this.current = value;
13
11
  }
14
-
15
12
  compareAndSet(old: A, value: A) {
16
13
  if (this.get === old) {
17
14
  this.set(value);
@@ -19,7 +16,6 @@ export class AtomicReference<A> {
19
16
  }
20
17
  return false;
21
18
  }
22
-
23
19
  getAndSet(value: A) {
24
20
  const previous = this.current;
25
21
  this.current = value;
@@ -4,25 +4,20 @@
4
4
  */
5
5
  export class Stack<A> {
6
6
  constructor(private node?: Node<A>) {}
7
-
8
7
  clone(): Stack<A> {
9
8
  return new Stack(this.node);
10
9
  }
11
-
12
10
  get hasNext(): boolean {
13
11
  return !!this.node;
14
12
  }
15
-
16
13
  get isEmpty(): boolean {
17
14
  return !this.hasNext;
18
15
  }
19
-
20
16
  peek(): A | undefined {
21
17
  if (this.node) {
22
18
  return this.node.value;
23
19
  }
24
20
  }
25
-
26
21
  pop(): A | undefined {
27
22
  if (this.node) {
28
23
  const value = this.node.value;
@@ -30,7 +25,6 @@ export class Stack<A> {
30
25
  return value;
31
26
  }
32
27
  }
33
-
34
28
  push(value: A): void {
35
29
  this.node = { value, previous: this.node };
36
30
  }
@@ -44,7 +38,7 @@ interface Node<A> {
44
38
  /**
45
39
  * @tsplus static fncts.StackOps __call
46
40
  */
47
- export function mkStack<A>(): Stack<A> {
41
+ export function makeStack<A>(): Stack<A> {
48
42
  return new Stack();
49
43
  }
50
44
 
@@ -1,5 +1,4 @@
1
1
  import { Lens } from "@fncts/base/optics/Lens";
2
-
3
2
  /**
4
3
  * @tsplus type fncts.optics.At
5
4
  */
@@ -8,7 +7,10 @@ export interface At<S, I, A> {
8
7
  }
9
8
 
10
9
  export type AtMin<S, I, A> =
11
- | { readonly get: (i: I) => (s: S) => A; readonly set: (i: I) => (s: S, a: A) => S }
10
+ | {
11
+ readonly get: (i: I) => (s: S) => A;
12
+ readonly set: (i: I) => (a: A) => (s: S) => S;
13
+ }
12
14
  | At<S, I, A>;
13
15
 
14
16
  /**
@@ -26,7 +28,7 @@ export function mkAt<S, I, A>(F: AtMin<S, I, A>): At<S, I, A> {
26
28
  return F;
27
29
  } else {
28
30
  return {
29
- at: (i) => Lens({ get: F.get(i), set_: F.set(i) }),
31
+ at: (i) => Lens({ get: F.get(i), set: F.set(i) }),
30
32
  };
31
33
  }
32
34
  }
@@ -1,9 +1,4 @@
1
1
  import type { Monoid } from "@fncts/base/typeclass";
2
-
3
- export interface foldMap_<S, A> {
4
- <M>(M: Monoid<M>): (s: S, f: (a: A) => M) => M;
5
- }
6
-
7
2
  export interface foldMap<S, A> {
8
3
  <M>(M: Monoid<M>): (f: (a: A) => M) => (s: S) => M;
9
4
  }
@@ -12,7 +7,6 @@ export interface foldMap<S, A> {
12
7
  * @tsplus type fncts.optics.Fold
13
8
  */
14
9
  export interface Fold<S, A> {
15
- readonly foldMap_: foldMap_<S, A>;
16
10
  readonly foldMap: foldMap<S, A>;
17
11
  }
18
12
 
@@ -24,15 +18,14 @@ export interface FoldOps {}
24
18
  export const Fold: FoldOps = {};
25
19
 
26
20
  export interface FoldMin<S, A> {
27
- readonly foldMap_: foldMap_<S, A>;
21
+ readonly foldMap: foldMap<S, A>;
28
22
  }
29
23
 
30
24
  /**
31
25
  * @tsplus static fncts.optics.FoldOps __call
32
26
  */
33
- export function mkFold<S, A>(F: FoldMin<S, A>): Fold<S, A> {
27
+ export function makeFold<S, A>(F: FoldMin<S, A>): Fold<S, A> {
34
28
  return {
35
- foldMap_: F.foldMap_,
36
- foldMap: (M) => (f) => (s) => F.foldMap_(M)(s, f),
29
+ foldMap: F.foldMap,
37
30
  };
38
31
  }
@@ -25,10 +25,9 @@ export interface GetterMin<S, A> {
25
25
  /**
26
26
  * @tsplus static fncts.optics.GetterOps __call
27
27
  */
28
- export function mkGetter<S, A>(F: GetterMin<S, A>): Getter<S, A> {
28
+ export function makeGetter<S, A>(F: GetterMin<S, A>): Getter<S, A> {
29
29
  return {
30
30
  get: F.get,
31
- foldMap_: (_) => (s, f) => f(F.get(s)),
32
31
  foldMap: (_) => (f) => (s) => f(F.get(s)),
33
32
  };
34
33
  }
@@ -19,6 +19,6 @@ export const Index: IndexOps = {};
19
19
  /**
20
20
  * @tsplus static fncts.optics.IndexOps __call
21
21
  */
22
- export function mkIndex<S, I, A>(F: IndexMin<S, I, A>): Index<S, I, A> {
22
+ export function makeIndex<S, I, A>(F: IndexMin<S, I, A>): Index<S, I, A> {
23
23
  return { index: F.index };
24
24
  }
@@ -1,11 +1,13 @@
1
1
  import { PIso } from "@fncts/base/optics/Iso/definition";
2
2
 
3
3
  /**
4
- * @tsplus fluent fncts.optics.PIso compose
4
+ * @tsplus pipeable fncts.optics.PIso compose
5
5
  */
6
- export function compose_<S, T, A, B, C, D>(self: PIso<S, T, A, B>, that: PIso<A, B, C, D>): PIso<S, T, C, D> {
7
- return PIso({
8
- get: self.get.compose(that.get),
9
- reverseGet: that.reverseGet.compose(self.reverseGet),
10
- });
6
+ export function compose<A, B, C, D>(that: PIso<A, B, C, D>) {
7
+ return <S, T>(self: PIso<S, T, A, B>): PIso<S, T, C, D> => {
8
+ return PIso({
9
+ get: self.get.compose(that.get),
10
+ reverseGet: that.reverseGet.compose(self.reverseGet),
11
+ });
12
+ };
11
13
  }
@@ -26,10 +26,10 @@ export interface PIsoMin<S, T, A, B> {
26
26
  /**
27
27
  * @tsplus static fncts.optics.PIsoOps __call
28
28
  */
29
- export function mkPIso<S, T, A, B>(F: PIsoMin<S, T, A, B>): PIso<S, T, A, B> {
29
+ export function makePIso<S, T, A, B>(F: PIsoMin<S, T, A, B>): PIso<S, T, A, B> {
30
30
  return {
31
31
  ...PPrism({ getOrModify: F.get.compose(Either.right), reverseGet: F.reverseGet }),
32
- ...PLens({ get: F.get, set_: (_s, b) => F.reverseGet(b) }),
32
+ ...PLens({ get: F.get, set: (b) => () => F.reverseGet(b) }),
33
33
  reverse: () => PIso({ get: F.reverseGet, reverseGet: F.get }),
34
34
  };
35
35
  }
@@ -47,6 +47,6 @@ export interface IsoOps {}
47
47
  /**
48
48
  * @tsplus static fncts.optics.IsoOps __call
49
49
  */
50
- export function mkIso<S, A>(F: PIsoMin<S, S, A, A>): Iso<S, A> {
50
+ export function makeIso<S, A>(F: PIsoMin<S, S, A, A>): Iso<S, A> {
51
51
  return PIso(F);
52
52
  }
@@ -6,23 +6,24 @@ import { Lens, PLens } from "@fncts/base/optics/Lens/definition";
6
6
  import { Prism } from "@fncts/base/optics/Prism";
7
7
 
8
8
  /**
9
- * @tsplus fluent fncts.optics.PLens component
9
+ * @tsplus pipeable fncts.optics.PLens component
10
10
  */
11
- export function component_<S, A extends ReadonlyArray<unknown>, P extends keyof A>(
12
- self: Lens<S, A>,
13
- component: P,
14
- ): Lens<S, A[P]> {
15
- return self.compose(Lens.getComponent<A>()(component));
11
+ export function component<A extends ReadonlyArray<unknown>, P extends keyof A>(component: P) {
12
+ return <S>(self: Lens<S, A>): Lens<S, A[P]> => {
13
+ return self.compose(Lens.getComponent<A>()(component));
14
+ };
16
15
  }
17
16
 
18
17
  /**
19
- * @tsplus fluent fncts.optics.PLens compose
18
+ * @tsplus pipeable fncts.optics.PLens compose
20
19
  */
21
- export function compose_<S, T, A, B, C, D>(self: PLens<S, T, A, B>, that: PLens<A, B, C, D>): PLens<S, T, C, D> {
22
- return PLens({
23
- get: self.get.compose(that.get),
24
- set_: (s, d) => self.modify_(s, that.set(d)),
25
- });
20
+ export function compose<A, B, C, D>(that: PLens<A, B, C, D>) {
21
+ return <S, T>(self: PLens<S, T, A, B>): PLens<S, T, C, D> => {
22
+ return PLens({
23
+ get: self.get.compose(that.get),
24
+ set: (d) => self.modify(that.set(d)),
25
+ });
26
+ };
26
27
  }
27
28
 
28
29
  /**
@@ -39,7 +40,7 @@ export function getComponent<A extends ReadonlyArray<unknown>>() {
39
40
  return <P extends keyof A>(component: P): Lens<A, A[P]> =>
40
41
  Lens({
41
42
  get: (s) => s[component],
42
- set_: (s, ap) => {
43
+ set: (ap) => (s) => {
43
44
  if (ap === s[component]) {
44
45
  return s;
45
46
  }
@@ -57,7 +58,7 @@ export function getProp<A extends Record<string, any>>() {
57
58
  return <P extends keyof A>(prop: P): Lens<A, A[P]> =>
58
59
  Lens({
59
60
  get: (s) => s[prop],
60
- set_: (s, ap) => {
61
+ set: (ap) => (s) => {
61
62
  if (ap === s[prop]) {
62
63
  return s;
63
64
  }
@@ -72,32 +73,35 @@ export function getProp<A extends Record<string, any>>() {
72
73
  export function id<S, A = S>(): PLens<S, A, S, A> {
73
74
  return PLens({
74
75
  get: identity,
75
- set_: (_, t) => t,
76
+ set: (t) => () => t,
76
77
  });
77
78
  }
78
79
 
79
80
  /**
80
- * @tsplus fluent fncts.optics.PLensOps invmap
81
+ * @tsplus pipeable fncts.optics.PLensOps invmap
81
82
  */
82
- export function invmap_<S, A, B>(self: Lens<S, A>, f: (a: A) => B, g: (b: B) => A): Lens<S, B> {
83
- return Lens({
84
- get: self.get.compose(f),
85
- set_: (s, b) => self.set_(s, g(b)),
86
- });
83
+ export function invmap_<A, B>(f: (a: A) => B, g: (b: B) => A) {
84
+ return <S>(self: Lens<S, A>): Lens<S, B> => {
85
+ return Lens({
86
+ get: self.get.compose(f),
87
+ set: (b) => self.set(g(b)),
88
+ });
89
+ };
87
90
  }
88
91
 
89
92
  /**
90
- * @tsplus fluent fncts.optics.Lens prop
93
+ * @tsplus pipeable fncts.optics.Lens prop
91
94
  */
92
- export function prop_<S, A extends Record<string, any>, P extends keyof A>(self: Lens<S, A>, prop: P): Lens<S, A[P]> {
93
- return self.compose(Lens.getProp<A>()(prop));
95
+ export function prop<A extends Record<string, any>, P extends keyof A>(prop: P) {
96
+ return <S>(self: Lens<S, A>): Lens<S, A[P]> => {
97
+ return self.compose(Lens.getProp<A>()(prop));
98
+ };
94
99
  }
95
100
 
96
101
  function nestPath<A>(p: ReadonlyNonEmptyArray<string>, a: A): Record<string, unknown> {
97
102
  const out: Record<string, unknown> = {};
98
103
  let view = out;
99
104
  let last = "";
100
-
101
105
  for (let i = 0; i < p.length; i++) {
102
106
  const pi = p[i]!;
103
107
  view[pi] = {};
@@ -106,27 +110,25 @@ function nestPath<A>(p: ReadonlyNonEmptyArray<string>, a: A): Record<string, unk
106
110
  }
107
111
  last = pi;
108
112
  }
109
-
110
113
  view[last] = a;
111
114
  return out;
112
115
  }
113
116
 
114
117
  /**
115
- * @tsplus fluent fncts.optics.Lens path
118
+ * @tsplus pipeable fncts.optics.Lens path
116
119
  */
117
- export function path_<S, A extends Record<string, unknown>, P extends Array<string>>(
118
- self: Lens<S, A>,
119
- path: readonly [...AutoPath<A, P>],
120
- ): Lens<S, Path<A, P>> {
121
- return Lens({
122
- get: (s) => path.foldLeft<string, Record<string, unknown>>(self.get(s), (b, p) => b[p] as A) as Path<A, P>,
123
- set_: (s, a) => {
124
- const os = self.get(s);
125
- const oa = path.foldLeft(os, (b, p) => b[p as string] as A);
126
- if (a === oa) {
127
- return s;
128
- }
129
- return self.set_(s, Object.assign({}, os, path.isNonEmpty() ? nestPath(path, a) : a));
130
- },
131
- });
120
+ export function path<A extends Record<string, unknown>, P extends Array<string>>(path: readonly [...AutoPath<A, P>]) {
121
+ return <S>(self: Lens<S, A>): Lens<S, Path<A, P>> => {
122
+ return Lens({
123
+ get: (s) => path.foldLeft<string, Record<string, unknown>>(self.get(s), (b, p) => b[p] as A) as Path<A, P>,
124
+ set: (a) => (s) => {
125
+ const os = self.get(s);
126
+ const oa = path.foldLeft(os, (b, p) => b[p as string] as A);
127
+ if (a === oa) {
128
+ return s;
129
+ }
130
+ return s.pipe(self.set(Object.assign({}, os, path.isNonEmpty() ? nestPath(path, a) : a)));
131
+ },
132
+ });
133
+ };
132
134
  }
@@ -1,5 +1,5 @@
1
1
  import type { get } from "@fncts/base/optics/Getter";
2
- import type { set_ } from "@fncts/base/optics/Setter";
2
+ import type { set } from "@fncts/base/optics/Setter";
3
3
 
4
4
  import { Getter } from "@fncts/base/optics/Getter";
5
5
  import { POptional } from "@fncts/base/optics/Optional";
@@ -18,15 +18,15 @@ export const PLens: PLensOps = {};
18
18
 
19
19
  export interface PLensMin<S, T, A, B> {
20
20
  readonly get: get<S, A>;
21
- readonly set_: set_<S, T, B>;
21
+ readonly set: set<S, T, B>;
22
22
  }
23
23
 
24
24
  /**
25
25
  * @tsplus static fncts.optics.PLensOps __call
26
26
  */
27
- export function mkPLens<S, T, A, B>(F: PLensMin<S, T, A, B>): PLens<S, T, A, B> {
27
+ export function makePLens<S, T, A, B>(F: PLensMin<S, T, A, B>): PLens<S, T, A, B> {
28
28
  return {
29
- ...POptional({ replace_: F.set_, getOrModify: (s) => Either.right(F.get(s)) }),
29
+ ...POptional({ set: F.set, getOrModify: (s) => Either.right(F.get(s)) }),
30
30
  ...Getter({ get: F.get }),
31
31
  };
32
32
  }
@@ -46,6 +46,6 @@ export const Lens: LensOps = {};
46
46
  /**
47
47
  * @tsplus static fncts.optics.LensOps __call
48
48
  */
49
- export function mkLens<S, A>(F: PLensMin<S, S, A, A>): Lens<S, A> {
49
+ export function makeLens<S, A>(F: PLensMin<S, S, A, A>): Lens<S, A> {
50
50
  return PLens(F);
51
51
  }
@@ -2,14 +2,14 @@ import { identity } from "@fncts/base/data/function";
2
2
  import { POptional } from "@fncts/base/optics/Optional/definition";
3
3
 
4
4
  /**
5
- * @tsplus fluent fncts.optics.POptional compose 3
5
+ * @tsplus pipeable fncts.optics.POptional compose 3
6
6
  */
7
- export function compose_<S, T, A, B, C, D>(
8
- self: POptional<S, T, A, B>,
9
- that: POptional<A, B, C, D>,
10
- ): POptional<S, T, C, D> {
11
- return POptional({
12
- getOrModify: (s) => self.getOrModify(s).flatMap((a) => that.getOrModify(a).bimap((b) => self.set_(s, b), identity)),
13
- replace_: (s, d) => self.modify_(s, that.set(d)),
14
- });
7
+ export function compose<A, B, C, D>(that: POptional<A, B, C, D>) {
8
+ return <S, T>(self: POptional<S, T, A, B>): POptional<S, T, C, D> => {
9
+ return POptional({
10
+ getOrModify: (s) =>
11
+ self.getOrModify(s).flatMap((a) => that.getOrModify(a).bimap((b) => s.pipe(self.set(b)), identity)),
12
+ set: (d) => self.modify(that.set(d)),
13
+ });
14
+ };
15
15
  }
@@ -1,5 +1,6 @@
1
- import type { set_ } from "@fncts/base/optics/Setter";
1
+ import type { set } from "@fncts/base/optics/Setter";
2
2
 
3
+ import { pipe } from "@fncts/base/data/function";
3
4
  import { PTraversal } from "@fncts/base/optics/Traversal";
4
5
 
5
6
  /**
@@ -8,13 +9,12 @@ import { PTraversal } from "@fncts/base/optics/Traversal";
8
9
  export interface POptional<S, T, A, B> extends PTraversal<S, T, A, B> {
9
10
  readonly getMaybe: getMaybe<S, A>;
10
11
  readonly getOrModify: getOrModify<S, T, A>;
11
- readonly modifyMaybe_: modifyMaybe_<S, T, A, B>;
12
12
  readonly modifyMaybe: modifyMaybe<S, T, A, B>;
13
13
  }
14
14
 
15
15
  export interface POptionalMin<S, T, A, B> {
16
16
  readonly getOrModify: getOrModify<S, T, A>;
17
- readonly replace_: set_<S, T, B>;
17
+ readonly set: set<S, T, B>;
18
18
  }
19
19
 
20
20
  /**
@@ -27,20 +27,17 @@ export const POptional: POptionalOps = {};
27
27
  /**
28
28
  * @tsplus static fncts.optics.POptionalOps __call
29
29
  */
30
- export function mkPOptional<S, T, A, B>(F: POptionalMin<S, T, A, B>): POptional<S, T, A, B> {
31
- const getMaybe: getMaybe<S, A> = (s) => F.getOrModify(s).getRight;
32
- const modifyMaybe_: modifyMaybe_<S, T, A, B> = (s, f) => getMaybe(s).map((a) => F.replace_(s, f(a)));
33
-
30
+ export function makePOptional<S, T, A, B>(F: POptionalMin<S, T, A, B>): POptional<S, T, A, B> {
31
+ const getMaybe: getMaybe<S, A> = (s) => F.getOrModify(s).getRight;
34
32
  return {
35
33
  getOrModify: F.getOrModify,
36
34
  getMaybe,
37
- modifyMaybe_,
38
- modifyMaybe: (f) => (s) => modifyMaybe_(s, f),
35
+ modifyMaybe: (f) => (s) => getMaybe(s).map((a) => pipe(s, F.set(f(a)))),
39
36
  ...PTraversal<S, T, A, B>({
40
- modifyA: (A) => (s, f) =>
37
+ modifyA: (A) => (f) => (s) =>
41
38
  F.getOrModify(s).match(
42
39
  (t) => A.pure(t),
43
- (a) => A.map(f(a), (b) => F.replace_(s, b)),
40
+ (a) => f(a).pipe(A.map((b) => s.pipe(F.set(b)))),
44
41
  ),
45
42
  }),
46
43
  };
@@ -61,7 +58,7 @@ export const Optional: OptionalOps = {};
61
58
  /**
62
59
  * @tsplus static fncts.optics.OptionalOps __call
63
60
  */
64
- export function mkOptional<S, A>(F: POptionalMin<S, S, A, A>): Optional<S, A> {
61
+ export function makeOptional<S, A>(F: POptionalMin<S, S, A, A>): Optional<S, A> {
65
62
  return POptional(F);
66
63
  }
67
64
 
@@ -73,10 +70,6 @@ export interface getOrModify<S, T, A> {
73
70
  (s: S): Either<T, A>;
74
71
  }
75
72
 
76
- export interface modifyMaybe_<S, T, A, B> {
77
- (s: S, f: (a: A) => B): Maybe<T>;
78
- }
79
-
80
73
  export interface modifyMaybe<S, T, A, B> {
81
74
  (f: (a: A) => B): (s: S) => Maybe<T>;
82
75
  }
@@ -1,7 +1,6 @@
1
1
  // codegen:start { preset: barrel, include: ./Optional/*.ts }
2
2
  export * from "./Optional/definition.js";
3
3
  // codegen:end
4
-
5
4
  // codegen:start { preset: barrel, include: ./Optional/api/*.ts }
6
5
  export * from "./Optional/api/compose.js";
7
6
  // codegen:end
@@ -2,11 +2,14 @@ import { identity } from "@fncts/base/data/function";
2
2
  import { PPrism } from "@fncts/base/optics/Prism/definition";
3
3
 
4
4
  /**
5
- * @tsplus fluent fncts.optics.PPrism compose
5
+ * @tsplus pipeable fncts.optics.PPrism compose
6
6
  */
7
- export function compose_<S, T, A, B, C, D>(self: PPrism<S, T, A, B>, that: PPrism<A, B, C, D>): PPrism<S, T, C, D> {
8
- return PPrism({
9
- getOrModify: (s) => self.getOrModify(s).flatMap((a) => that.getOrModify(a).bimap((b) => self.set_(s, b), identity)),
10
- reverseGet: that.reverseGet.compose(self.reverseGet),
11
- });
7
+ export function compose<A, B, C, D>(that: PPrism<A, B, C, D>) {
8
+ return <S, T>(self: PPrism<S, T, A, B>): PPrism<S, T, C, D> => {
9
+ return PPrism({
10
+ getOrModify: (s) =>
11
+ self.getOrModify(s).flatMap((a) => that.getOrModify(a).bimap((b) => s.pipe(self.set(b)), identity)),
12
+ reverseGet: that.reverseGet.compose(self.reverseGet),
13
+ });
14
+ };
12
15
  }
@@ -25,12 +25,12 @@ export interface PPrismMin<S, T, A, B> {
25
25
  /**
26
26
  * @tsplus static fncts.optics.PPrismOps __call
27
27
  */
28
- export function mkPPrism<S, T, A, B>(F: PPrismMin<S, T, A, B>): PPrism<S, T, A, B> {
28
+ export function makePPrism<S, T, A, B>(F: PPrismMin<S, T, A, B>): PPrism<S, T, A, B> {
29
29
  return {
30
30
  reverseGet: F.reverseGet,
31
31
  ...POptional({
32
32
  getOrModify: F.getOrModify,
33
- replace_: (s, b) => F.getOrModify(s).match(identity, () => F.reverseGet(b)),
33
+ set: (b) => (s) => F.getOrModify(s).match(identity, () => F.reverseGet(b)),
34
34
  }),
35
35
  };
36
36
  }
@@ -50,7 +50,7 @@ export const Prism: PrismOps = {};
50
50
  /**
51
51
  * @tsplus static fncts.optics.PrismOps __call
52
52
  */
53
- export function mkPrism<S, A>(F: PPrismMin<S, S, A, A>): Prism<S, A> {
53
+ export function makePrism<S, A>(F: PPrismMin<S, S, A, A>): Prism<S, A> {
54
54
  return PPrism(F);
55
55
  }
56
56
 
@@ -1,7 +1,6 @@
1
1
  // codegen:start { preset: barrel, include: ./Prism/*.ts }
2
2
  export * from "./Prism/definition.js";
3
3
  // codegen:end
4
-
5
4
  // codegen:start { preset: barrel, include: ./Prism/api/*.ts }
6
5
  export * from "./Prism/api/compose.js";
7
6
  export * from "./Prism/api/fromNullable.js";
@@ -2,17 +2,10 @@
2
2
  * @tsplus type fncts.optics.PSetter
3
3
  */
4
4
  export interface PSetter<S, T, A, B> {
5
- readonly modify_: modify_<S, T, A, B>;
6
5
  readonly modify: modify<S, T, A, B>;
7
- readonly set_: set_<S, T, B>;
8
6
  readonly set: set<S, T, B>;
9
7
  }
10
8
 
11
- export interface PSetterMin<S, T, A, B> {
12
- readonly modify_: modify_<S, T, A, B>;
13
- readonly set_: set_<S, T, B>;
14
- }
15
-
16
9
  /**
17
10
  * @tsplus type fncts.optics.PSetterOps
18
11
  */
@@ -23,13 +16,8 @@ export const PSetter: PSetterOps = {};
23
16
  /**
24
17
  * @tsplus static fncts.optics.PSetterOps __call
25
18
  */
26
- export function mkPSetter<S, T, A, B>(F: PSetterMin<S, T, A, B>): PSetter<S, T, A, B> {
27
- return {
28
- modify_: F.modify_,
29
- modify: (f) => (s) => F.modify_(s, f),
30
- set_: F.set_,
31
- set: (b) => (s) => F.set_(s, b),
32
- };
19
+ export function makePSetter<S, T, A, B>(F: PSetter<S, T, A, B>): PSetter<S, T, A, B> {
20
+ return F;
33
21
  }
34
22
 
35
23
  /**
@@ -45,22 +33,14 @@ export interface SetterOps extends PSetterOps {}
45
33
  /**
46
34
  * @tsplus static fncts.optics.SetterOps __call
47
35
  */
48
- export function mkSetter<S, A>(F: PSetterMin<S, S, A, A>): Setter<S, A> {
36
+ export function makeSetter<S, A>(F: PSetter<S, S, A, A>): Setter<S, A> {
49
37
  return PSetter(F);
50
38
  }
51
39
 
52
- export interface modify_<S, T, A, B> {
53
- (s: S, f: (a: A) => B): T;
54
- }
55
-
56
40
  export interface modify<S, T, A, B> {
57
41
  (f: (a: A) => B): (s: S) => T;
58
42
  }
59
43
 
60
- export interface set_<S, T, B> {
61
- (s: S, b: B): T;
62
- }
63
-
64
44
  export interface set<S, T, B> {
65
45
  (b: B): (s: S) => T;
66
46
  }
@@ -1,13 +1,12 @@
1
1
  import { PTraversal } from "@fncts/base/optics/Traversal/definition";
2
2
 
3
3
  /**
4
- * @tsplus fluent fncts.optics.PTraversal compose 4
4
+ * @tsplus pipeable fncts.optics.PTraversal compose 4
5
5
  */
6
- export function compose_<S, T, A, B, C, D>(
7
- self: PTraversal<S, T, A, B>,
8
- that: PTraversal<A, B, C, D>,
9
- ): PTraversal<S, T, C, D> {
10
- return PTraversal<S, T, C, D>({
11
- modifyA: (F) => (s, f) => self.modifyA(F)(s, (a) => that.modifyA(F)(a, f)),
12
- });
6
+ export function compose<A, B, C, D>(that: PTraversal<A, B, C, D>) {
7
+ return <S, T>(self: PTraversal<S, T, A, B>): PTraversal<S, T, C, D> => {
8
+ return PTraversal<S, T, C, D>({
9
+ modifyA: (F) => (f) => self.modifyA(F)(that.modifyA(F)(f)),
10
+ });
11
+ };
13
12
  }
@@ -19,6 +19,6 @@ export function fromTraversable<F extends HKT, FC = HKT.None>(T: P.Traversable<F
19
19
  E = HKT.Low<F, "E">,
20
20
  >() =>
21
21
  PTraversal<HKT.Kind<F, FC, K, Q, W, X, I, S, R, E, A>, HKT.Kind<F, FC, K, Q, W, X, I, S, R, E, B>, A, B>({
22
- modifyA: (F) => (s, f) => T.traverse(s)(F)(f),
22
+ modifyA: T.traverse,
23
23
  });
24
24
  }