effect 3.13.7 → 3.13.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. package/dist/cjs/Array.js +460 -431
  2. package/dist/cjs/Array.js.map +1 -1
  3. package/dist/cjs/BigDecimal.js +31 -89
  4. package/dist/cjs/BigDecimal.js.map +1 -1
  5. package/dist/cjs/BigInt.js +27 -71
  6. package/dist/cjs/BigInt.js.map +1 -1
  7. package/dist/cjs/Boolean.js +12 -10
  8. package/dist/cjs/Boolean.js.map +1 -1
  9. package/dist/cjs/Brand.js +2 -0
  10. package/dist/cjs/Brand.js.map +1 -1
  11. package/dist/cjs/Channel.js +0 -2
  12. package/dist/cjs/Channel.js.map +1 -1
  13. package/dist/cjs/Chunk.js +4 -0
  14. package/dist/cjs/Chunk.js.map +1 -1
  15. package/dist/cjs/Config.js +0 -5
  16. package/dist/cjs/Config.js.map +1 -1
  17. package/dist/cjs/Context.js +14 -24
  18. package/dist/cjs/Context.js.map +1 -1
  19. package/dist/cjs/Cron.js +11 -25
  20. package/dist/cjs/Cron.js.map +1 -1
  21. package/dist/cjs/Data.js +6 -0
  22. package/dist/cjs/Data.js.map +1 -1
  23. package/dist/cjs/DateTime.js +2 -0
  24. package/dist/cjs/DateTime.js.map +1 -1
  25. package/dist/cjs/Duration.js +2 -2
  26. package/dist/cjs/Effect.js +122 -53
  27. package/dist/cjs/Effect.js.map +1 -1
  28. package/dist/cjs/Either.js +21 -25
  29. package/dist/cjs/Either.js.map +1 -1
  30. package/dist/cjs/Encoding.js +1 -1
  31. package/dist/cjs/Equivalence.js +1 -1
  32. package/dist/cjs/Function.js +21 -24
  33. package/dist/cjs/Function.js.map +1 -1
  34. package/dist/cjs/HashMap.js +0 -3
  35. package/dist/cjs/HashMap.js.map +1 -1
  36. package/dist/cjs/Iterable.js +9 -2
  37. package/dist/cjs/Iterable.js.map +1 -1
  38. package/dist/cjs/List.js +2 -0
  39. package/dist/cjs/List.js.map +1 -1
  40. package/dist/cjs/Logger.js +0 -2
  41. package/dist/cjs/Logger.js.map +1 -1
  42. package/dist/cjs/Mailbox.js +1 -0
  43. package/dist/cjs/Mailbox.js.map +1 -1
  44. package/dist/cjs/ManagedRuntime.js +0 -2
  45. package/dist/cjs/ManagedRuntime.js.map +1 -1
  46. package/dist/cjs/Metric.js +6 -12
  47. package/dist/cjs/Metric.js.map +1 -1
  48. package/dist/cjs/Number.js +22 -61
  49. package/dist/cjs/Number.js.map +1 -1
  50. package/dist/cjs/Option.js +5 -0
  51. package/dist/cjs/Option.js.map +1 -1
  52. package/dist/cjs/Order.js +1 -0
  53. package/dist/cjs/Order.js.map +1 -1
  54. package/dist/cjs/Ordering.js +2 -7
  55. package/dist/cjs/Ordering.js.map +1 -1
  56. package/dist/cjs/ParseResult.js +14 -8
  57. package/dist/cjs/ParseResult.js.map +1 -1
  58. package/dist/cjs/Pool.js +1 -1
  59. package/dist/cjs/Predicate.js +36 -77
  60. package/dist/cjs/Predicate.js.map +1 -1
  61. package/dist/cjs/Random.js +1 -2
  62. package/dist/cjs/Random.js.map +1 -1
  63. package/dist/cjs/RcMap.js +5 -2
  64. package/dist/cjs/RcMap.js.map +1 -1
  65. package/dist/cjs/Record.js +28 -107
  66. package/dist/cjs/Record.js.map +1 -1
  67. package/dist/cjs/Redacted.js +3 -0
  68. package/dist/cjs/Redacted.js.map +1 -1
  69. package/dist/cjs/RegExp.js +2 -2
  70. package/dist/cjs/RegExp.js.map +1 -1
  71. package/dist/cjs/STM.js +3 -5
  72. package/dist/cjs/STM.js.map +1 -1
  73. package/dist/cjs/Schedule.js +2 -2
  74. package/dist/cjs/Schema.js +19 -16
  75. package/dist/cjs/Schema.js.map +1 -1
  76. package/dist/cjs/SchemaAST.js +0 -2
  77. package/dist/cjs/SchemaAST.js.map +1 -1
  78. package/dist/cjs/Sink.js +14 -10
  79. package/dist/cjs/Sink.js.map +1 -1
  80. package/dist/cjs/Stream.js +24 -25
  81. package/dist/cjs/Stream.js.map +1 -1
  82. package/dist/cjs/String.js +31 -2
  83. package/dist/cjs/String.js.map +1 -1
  84. package/dist/cjs/Struct.js +6 -0
  85. package/dist/cjs/Struct.js.map +1 -1
  86. package/dist/cjs/Symbol.js +1 -2
  87. package/dist/cjs/Symbol.js.map +1 -1
  88. package/dist/cjs/TestClock.js.map +1 -1
  89. package/dist/cjs/Trie.js +28 -0
  90. package/dist/cjs/Trie.js.map +1 -1
  91. package/dist/cjs/Tuple.js +9 -24
  92. package/dist/cjs/Tuple.js.map +1 -1
  93. package/dist/cjs/internal/matcher.js +1 -1
  94. package/dist/cjs/internal/matcher.js.map +1 -1
  95. package/dist/cjs/internal/version.js +1 -1
  96. package/dist/dts/Array.d.ts +1235 -1188
  97. package/dist/dts/Array.d.ts.map +1 -1
  98. package/dist/dts/BigDecimal.d.ts +61 -189
  99. package/dist/dts/BigDecimal.d.ts.map +1 -1
  100. package/dist/dts/BigInt.d.ts +57 -165
  101. package/dist/dts/BigInt.d.ts.map +1 -1
  102. package/dist/dts/Boolean.d.ts +28 -18
  103. package/dist/dts/Boolean.d.ts.map +1 -1
  104. package/dist/dts/Brand.d.ts +3 -3
  105. package/dist/dts/Brand.d.ts.map +1 -1
  106. package/dist/dts/Channel.d.ts +0 -6
  107. package/dist/dts/Channel.d.ts.map +1 -1
  108. package/dist/dts/Chunk.d.ts +15 -0
  109. package/dist/dts/Chunk.d.ts.map +1 -1
  110. package/dist/dts/Config.d.ts +0 -5
  111. package/dist/dts/Config.d.ts.map +1 -1
  112. package/dist/dts/Context.d.ts +26 -54
  113. package/dist/dts/Context.d.ts.map +1 -1
  114. package/dist/dts/Cron.d.ts +9 -23
  115. package/dist/dts/Cron.d.ts.map +1 -1
  116. package/dist/dts/Data.d.ts +8 -0
  117. package/dist/dts/Data.d.ts.map +1 -1
  118. package/dist/dts/DateTime.d.ts +6 -0
  119. package/dist/dts/DateTime.d.ts.map +1 -1
  120. package/dist/dts/Duration.d.ts +2 -2
  121. package/dist/dts/Effect.d.ts +153 -71
  122. package/dist/dts/Effect.d.ts.map +1 -1
  123. package/dist/dts/Either.d.ts +44 -57
  124. package/dist/dts/Either.d.ts.map +1 -1
  125. package/dist/dts/Encoding.d.ts +1 -1
  126. package/dist/dts/Equivalence.d.ts +1 -1
  127. package/dist/dts/Function.d.ts +55 -59
  128. package/dist/dts/Function.d.ts.map +1 -1
  129. package/dist/dts/HashMap.d.ts +0 -9
  130. package/dist/dts/HashMap.d.ts.map +1 -1
  131. package/dist/dts/Iterable.d.ts +13 -2
  132. package/dist/dts/Iterable.d.ts.map +1 -1
  133. package/dist/dts/List.d.ts +10 -0
  134. package/dist/dts/List.d.ts.map +1 -1
  135. package/dist/dts/Logger.d.ts +0 -6
  136. package/dist/dts/Logger.d.ts.map +1 -1
  137. package/dist/dts/Mailbox.d.ts +1 -0
  138. package/dist/dts/Mailbox.d.ts.map +1 -1
  139. package/dist/dts/ManagedRuntime.d.ts +0 -2
  140. package/dist/dts/ManagedRuntime.d.ts.map +1 -1
  141. package/dist/dts/Metric.d.ts +14 -20
  142. package/dist/dts/Metric.d.ts.map +1 -1
  143. package/dist/dts/Micro.d.ts +1 -1
  144. package/dist/dts/Number.d.ts +52 -155
  145. package/dist/dts/Number.d.ts.map +1 -1
  146. package/dist/dts/Option.d.ts +12 -0
  147. package/dist/dts/Option.d.ts.map +1 -1
  148. package/dist/dts/Order.d.ts +1 -0
  149. package/dist/dts/Order.d.ts.map +1 -1
  150. package/dist/dts/Ordering.d.ts +4 -17
  151. package/dist/dts/Ordering.d.ts.map +1 -1
  152. package/dist/dts/Pool.d.ts +1 -1
  153. package/dist/dts/Predicate.d.ts +56 -133
  154. package/dist/dts/Predicate.d.ts.map +1 -1
  155. package/dist/dts/Random.d.ts +1 -2
  156. package/dist/dts/Random.d.ts.map +1 -1
  157. package/dist/dts/RcMap.d.ts +15 -6
  158. package/dist/dts/RcMap.d.ts.map +1 -1
  159. package/dist/dts/Record.d.ts +68 -279
  160. package/dist/dts/Record.d.ts.map +1 -1
  161. package/dist/dts/Redacted.d.ts +3 -0
  162. package/dist/dts/Redacted.d.ts.map +1 -1
  163. package/dist/dts/RegExp.d.ts +2 -2
  164. package/dist/dts/RegExp.d.ts.map +1 -1
  165. package/dist/dts/STM.d.ts +5 -7
  166. package/dist/dts/STM.d.ts.map +1 -1
  167. package/dist/dts/Schedule.d.ts +7 -7
  168. package/dist/dts/Schema.d.ts +32 -26
  169. package/dist/dts/Schema.d.ts.map +1 -1
  170. package/dist/dts/SchemaAST.d.ts +0 -2
  171. package/dist/dts/SchemaAST.d.ts.map +1 -1
  172. package/dist/dts/Sink.d.ts +14 -10
  173. package/dist/dts/Sink.d.ts.map +1 -1
  174. package/dist/dts/Stream.d.ts +58 -62
  175. package/dist/dts/Stream.d.ts.map +1 -1
  176. package/dist/dts/String.d.ts +47 -2
  177. package/dist/dts/String.d.ts.map +1 -1
  178. package/dist/dts/Struct.d.ts +12 -0
  179. package/dist/dts/Struct.d.ts.map +1 -1
  180. package/dist/dts/Symbol.d.ts +1 -2
  181. package/dist/dts/Symbol.d.ts.map +1 -1
  182. package/dist/dts/TestClock.d.ts +2 -1
  183. package/dist/dts/TestClock.d.ts.map +1 -1
  184. package/dist/dts/Trie.d.ts +66 -0
  185. package/dist/dts/Trie.d.ts.map +1 -1
  186. package/dist/dts/Tuple.d.ts +21 -62
  187. package/dist/dts/Tuple.d.ts.map +1 -1
  188. package/dist/dts/Utils.d.ts +8 -8
  189. package/dist/esm/Array.js +474 -442
  190. package/dist/esm/Array.js.map +1 -1
  191. package/dist/esm/BigDecimal.js +31 -89
  192. package/dist/esm/BigDecimal.js.map +1 -1
  193. package/dist/esm/BigInt.js +27 -71
  194. package/dist/esm/BigInt.js.map +1 -1
  195. package/dist/esm/Boolean.js +12 -10
  196. package/dist/esm/Boolean.js.map +1 -1
  197. package/dist/esm/Brand.js +2 -0
  198. package/dist/esm/Brand.js.map +1 -1
  199. package/dist/esm/Channel.js +0 -2
  200. package/dist/esm/Channel.js.map +1 -1
  201. package/dist/esm/Chunk.js +4 -0
  202. package/dist/esm/Chunk.js.map +1 -1
  203. package/dist/esm/Config.js +0 -5
  204. package/dist/esm/Config.js.map +1 -1
  205. package/dist/esm/Context.js +14 -24
  206. package/dist/esm/Context.js.map +1 -1
  207. package/dist/esm/Cron.js +11 -25
  208. package/dist/esm/Cron.js.map +1 -1
  209. package/dist/esm/Data.js +7 -0
  210. package/dist/esm/Data.js.map +1 -1
  211. package/dist/esm/DateTime.js +2 -0
  212. package/dist/esm/DateTime.js.map +1 -1
  213. package/dist/esm/Duration.js +2 -2
  214. package/dist/esm/Effect.js +123 -53
  215. package/dist/esm/Effect.js.map +1 -1
  216. package/dist/esm/Either.js +22 -25
  217. package/dist/esm/Either.js.map +1 -1
  218. package/dist/esm/Encoding.js +1 -1
  219. package/dist/esm/Equivalence.js +1 -1
  220. package/dist/esm/Function.js +21 -24
  221. package/dist/esm/Function.js.map +1 -1
  222. package/dist/esm/HashMap.js +0 -3
  223. package/dist/esm/HashMap.js.map +1 -1
  224. package/dist/esm/Iterable.js +9 -2
  225. package/dist/esm/Iterable.js.map +1 -1
  226. package/dist/esm/List.js +2 -0
  227. package/dist/esm/List.js.map +1 -1
  228. package/dist/esm/Logger.js +0 -2
  229. package/dist/esm/Logger.js.map +1 -1
  230. package/dist/esm/Mailbox.js +1 -0
  231. package/dist/esm/Mailbox.js.map +1 -1
  232. package/dist/esm/ManagedRuntime.js +0 -2
  233. package/dist/esm/ManagedRuntime.js.map +1 -1
  234. package/dist/esm/Metric.js +6 -12
  235. package/dist/esm/Metric.js.map +1 -1
  236. package/dist/esm/Micro.js +1 -1
  237. package/dist/esm/Number.js +22 -61
  238. package/dist/esm/Number.js.map +1 -1
  239. package/dist/esm/Option.js +6 -0
  240. package/dist/esm/Option.js.map +1 -1
  241. package/dist/esm/Order.js +1 -0
  242. package/dist/esm/Order.js.map +1 -1
  243. package/dist/esm/Ordering.js +2 -7
  244. package/dist/esm/Ordering.js.map +1 -1
  245. package/dist/esm/ParseResult.js +14 -8
  246. package/dist/esm/ParseResult.js.map +1 -1
  247. package/dist/esm/Pool.js +1 -1
  248. package/dist/esm/Predicate.js +36 -77
  249. package/dist/esm/Predicate.js.map +1 -1
  250. package/dist/esm/Random.js +1 -2
  251. package/dist/esm/Random.js.map +1 -1
  252. package/dist/esm/RcMap.js +5 -2
  253. package/dist/esm/RcMap.js.map +1 -1
  254. package/dist/esm/Record.js +28 -107
  255. package/dist/esm/Record.js.map +1 -1
  256. package/dist/esm/Redacted.js +3 -0
  257. package/dist/esm/Redacted.js.map +1 -1
  258. package/dist/esm/RegExp.js +2 -2
  259. package/dist/esm/RegExp.js.map +1 -1
  260. package/dist/esm/STM.js +3 -5
  261. package/dist/esm/STM.js.map +1 -1
  262. package/dist/esm/Schedule.js +2 -2
  263. package/dist/esm/Schema.js +19 -16
  264. package/dist/esm/Schema.js.map +1 -1
  265. package/dist/esm/SchemaAST.js +0 -2
  266. package/dist/esm/SchemaAST.js.map +1 -1
  267. package/dist/esm/Sink.js +14 -10
  268. package/dist/esm/Sink.js.map +1 -1
  269. package/dist/esm/Stream.js +25 -25
  270. package/dist/esm/Stream.js.map +1 -1
  271. package/dist/esm/String.js +31 -2
  272. package/dist/esm/String.js.map +1 -1
  273. package/dist/esm/Struct.js +6 -0
  274. package/dist/esm/Struct.js.map +1 -1
  275. package/dist/esm/Symbol.js +1 -2
  276. package/dist/esm/Symbol.js.map +1 -1
  277. package/dist/esm/TestClock.js.map +1 -1
  278. package/dist/esm/Trie.js +28 -0
  279. package/dist/esm/Trie.js.map +1 -1
  280. package/dist/esm/Tuple.js +11 -30
  281. package/dist/esm/Tuple.js.map +1 -1
  282. package/dist/esm/internal/matcher.js +1 -1
  283. package/dist/esm/internal/matcher.js.map +1 -1
  284. package/dist/esm/internal/version.js +1 -1
  285. package/package.json +1 -1
  286. package/src/Array.ts +1235 -1188
  287. package/src/BigDecimal.ts +61 -189
  288. package/src/BigInt.ts +57 -165
  289. package/src/Boolean.ts +28 -18
  290. package/src/Brand.ts +3 -3
  291. package/src/Channel.ts +0 -6
  292. package/src/Chunk.ts +16 -0
  293. package/src/Config.ts +0 -5
  294. package/src/Context.ts +26 -54
  295. package/src/Cron.ts +11 -25
  296. package/src/Data.ts +8 -0
  297. package/src/DateTime.ts +6 -0
  298. package/src/Duration.ts +2 -2
  299. package/src/Effect.ts +153 -71
  300. package/src/Either.ts +45 -58
  301. package/src/Encoding.ts +1 -1
  302. package/src/Equivalence.ts +1 -1
  303. package/src/Function.ts +55 -59
  304. package/src/HashMap.ts +0 -9
  305. package/src/Iterable.ts +13 -2
  306. package/src/List.ts +12 -0
  307. package/src/Logger.ts +0 -6
  308. package/src/Mailbox.ts +1 -0
  309. package/src/ManagedRuntime.ts +0 -2
  310. package/src/Metric.ts +14 -20
  311. package/src/Micro.ts +1 -1
  312. package/src/Number.ts +52 -155
  313. package/src/Option.ts +12 -0
  314. package/src/Order.ts +1 -0
  315. package/src/Ordering.ts +4 -17
  316. package/src/ParseResult.ts +16 -9
  317. package/src/Pool.ts +1 -1
  318. package/src/Predicate.ts +56 -133
  319. package/src/Random.ts +1 -2
  320. package/src/RcMap.ts +15 -6
  321. package/src/Record.ts +68 -279
  322. package/src/Redacted.ts +3 -0
  323. package/src/RegExp.ts +2 -2
  324. package/src/STM.ts +5 -7
  325. package/src/Schedule.ts +7 -7
  326. package/src/Schema.ts +37 -28
  327. package/src/SchemaAST.ts +0 -2
  328. package/src/Sink.ts +14 -10
  329. package/src/Stream.ts +56 -61
  330. package/src/String.ts +47 -2
  331. package/src/Struct.ts +12 -0
  332. package/src/Symbol.ts +1 -2
  333. package/src/TestClock.ts +2 -1
  334. package/src/Trie.ts +66 -0
  335. package/src/Tuple.ts +21 -62
  336. package/src/Utils.ts +8 -8
  337. package/src/internal/matcher.ts +1 -1
  338. package/src/internal/version.ts +1 -1
package/src/Option.ts CHANGED
@@ -1161,6 +1161,7 @@ export const liftThrowable = <A extends ReadonlyArray<unknown>, B>(
1161
1161
  *
1162
1162
  * @example
1163
1163
  * ```ts
1164
+ * import * as assert from "node:assert"
1164
1165
  * import { Option } from "effect"
1165
1166
  *
1166
1167
  * assert.deepStrictEqual(
@@ -1190,6 +1191,7 @@ export const getOrThrowWith: {
1190
1191
  *
1191
1192
  * @example
1192
1193
  * ```ts
1194
+ * import * as assert from "node:assert"
1193
1195
  * import { Option } from "effect"
1194
1196
  *
1195
1197
  * assert.deepStrictEqual(
@@ -1219,6 +1221,7 @@ export const getOrThrowWith: {
1219
1221
  *
1220
1222
  * @example
1221
1223
  * ```ts
1224
+ * import * as assert from "node:assert"
1222
1225
  * import { Option } from "effect"
1223
1226
  *
1224
1227
  * assert.deepStrictEqual(
@@ -1254,6 +1257,7 @@ export const getOrThrowWith: {
1254
1257
  *
1255
1258
  * @example
1256
1259
  * ```ts
1260
+ * import * as assert from "node:assert"
1257
1261
  * import { Option } from "effect"
1258
1262
  *
1259
1263
  * assert.deepStrictEqual(Option.getOrThrow(Option.some(1)), 1)
@@ -3675,6 +3679,7 @@ export const exists: {
3675
3679
  *
3676
3680
  * @example
3677
3681
  * ```ts
3682
+ * import * as assert from "node:assert"
3678
3683
  * import { Option, pipe } from "effect"
3679
3684
  *
3680
3685
  * const result = pipe(
@@ -3712,6 +3717,7 @@ export const bindTo: {
3712
3717
  *
3713
3718
  * @example
3714
3719
  * ```ts
3720
+ * import * as assert from "node:assert"
3715
3721
  * import { Option, pipe } from "effect"
3716
3722
  *
3717
3723
  * const result = pipe(
@@ -3749,6 +3755,7 @@ export const bindTo: {
3749
3755
  *
3750
3756
  * @example
3751
3757
  * ```ts
3758
+ * import * as assert from "node:assert"
3752
3759
  * import { Option, pipe } from "effect"
3753
3760
  *
3754
3761
  * const result = pipe(
@@ -3797,6 +3804,7 @@ export {
3797
3804
  *
3798
3805
  * @example
3799
3806
  * ```ts
3807
+ * import * as assert from "node:assert"
3800
3808
  * import { Option, pipe } from "effect"
3801
3809
  *
3802
3810
  * const result = pipe(
@@ -3832,6 +3840,7 @@ export {
3832
3840
  *
3833
3841
  * @example
3834
3842
  * ```ts
3843
+ * import * as assert from "node:assert"
3835
3844
  * import { Option, pipe } from "effect"
3836
3845
  *
3837
3846
  * const result = pipe(
@@ -3865,6 +3874,7 @@ export const bind: {
3865
3874
  *
3866
3875
  * @example
3867
3876
  * ```ts
3877
+ * import * as assert from "node:assert"
3868
3878
  * import { Option, pipe } from "effect"
3869
3879
  *
3870
3880
  * const result = pipe(
@@ -3898,6 +3908,7 @@ export const bind: {
3898
3908
  *
3899
3909
  * @example
3900
3910
  * ```ts
3911
+ * import * as assert from "node:assert"
3901
3912
  * import { Option, pipe } from "effect"
3902
3913
  *
3903
3914
  * const result = pipe(
@@ -3937,6 +3948,7 @@ export const bind: {
3937
3948
  *
3938
3949
  * @example
3939
3950
  * ```ts
3951
+ * import * as assert from "node:assert"
3940
3952
  * import { Option, pipe } from "effect"
3941
3953
  *
3942
3954
  * const result = pipe(
package/src/Order.ts CHANGED
@@ -343,6 +343,7 @@ export const max = <A>(O: Order<A>): {
343
343
  *
344
344
  * @example
345
345
  * ```ts
346
+ * import * as assert from "node:assert"
346
347
  * import { Order, Number } from "effect"
347
348
  *
348
349
  * const clamp = Order.clamp(Number.Order)({ minimum: 1, maximum: 5 })
package/src/Ordering.ts CHANGED
@@ -13,10 +13,9 @@ export type Ordering = -1 | 0 | 1
13
13
  /**
14
14
  * Inverts the ordering of the input `Ordering`.
15
15
  *
16
- * @param o - The input `Ordering`.
17
- *
18
16
  * @example
19
17
  * ```ts
18
+ * import * as assert from "node:assert"
20
19
  * import { reverse } from "effect/Ordering"
21
20
  *
22
21
  * assert.deepStrictEqual(reverse(1), -1)
@@ -31,13 +30,9 @@ export const reverse = (o: Ordering): Ordering => (o === -1 ? 1 : o === 1 ? -1 :
31
30
  /**
32
31
  * Depending on the `Ordering` parameter given to it, returns a value produced by one of the 3 functions provided as parameters.
33
32
  *
34
- * @param self - The `Ordering` parameter to match against.
35
- * @param onLessThan - A function that will be called if the `Ordering` parameter is `-1`.
36
- * @param onEqual - A function that will be called if the `Ordering` parameter is `0`.
37
- * @param onGreaterThan - A function that will be called if the `Ordering` parameter is `1`.
38
- *
39
33
  * @example
40
34
  * ```ts
35
+ * import * as assert from "node:assert"
41
36
  * import { Ordering } from "effect"
42
37
  * import { constant } from "effect/Function"
43
38
  *
@@ -59,13 +54,9 @@ export const match: {
59
54
  /**
60
55
  * Depending on the `Ordering` parameter given to it, returns a value produced by one of the 3 functions provided as parameters.
61
56
  *
62
- * @param self - The `Ordering` parameter to match against.
63
- * @param onLessThan - A function that will be called if the `Ordering` parameter is `-1`.
64
- * @param onEqual - A function that will be called if the `Ordering` parameter is `0`.
65
- * @param onGreaterThan - A function that will be called if the `Ordering` parameter is `1`.
66
- *
67
57
  * @example
68
58
  * ```ts
59
+ * import * as assert from "node:assert"
69
60
  * import { Ordering } from "effect"
70
61
  * import { constant } from "effect/Function"
71
62
  *
@@ -93,13 +84,9 @@ export const match: {
93
84
  /**
94
85
  * Depending on the `Ordering` parameter given to it, returns a value produced by one of the 3 functions provided as parameters.
95
86
  *
96
- * @param self - The `Ordering` parameter to match against.
97
- * @param onLessThan - A function that will be called if the `Ordering` parameter is `-1`.
98
- * @param onEqual - A function that will be called if the `Ordering` parameter is `0`.
99
- * @param onGreaterThan - A function that will be called if the `Ordering` parameter is `1`.
100
- *
101
87
  * @example
102
88
  * ```ts
89
+ * import * as assert from "node:assert"
103
90
  * import { Ordering } from "effect"
104
91
  * import { constant } from "effect/Function"
105
92
  *
@@ -2015,7 +2015,7 @@ const makeArrayFormatterIssue = (
2015
2015
  * @since 3.10.0
2016
2016
  */
2017
2017
  export const ArrayFormatter: ParseResultFormatter<Array<ArrayFormatterIssue>> = {
2018
- formatIssue: (issue) => getArrayFormatterIssues(issue),
2018
+ formatIssue: (issue) => getArrayFormatterIssues(issue, undefined, []),
2019
2019
  formatIssueSync: (issue) => {
2020
2020
  const e = ArrayFormatter.formatIssue(issue)
2021
2021
  return isEither(e) ? Either.getOrThrow(e) : Effect.runSync(e)
@@ -2026,12 +2026,13 @@ export const ArrayFormatter: ParseResultFormatter<Array<ArrayFormatterIssue>> =
2026
2026
 
2027
2027
  const getArrayFormatterIssues = (
2028
2028
  issue: ParseIssue,
2029
- path: ReadonlyArray<PropertyKey> = []
2029
+ parentTag: ArrayFormatterIssue["_tag"] | undefined,
2030
+ path: ReadonlyArray<PropertyKey>
2030
2031
  ): Effect.Effect<Array<ArrayFormatterIssue>> => {
2031
2032
  const _tag = issue._tag
2032
2033
  switch (_tag) {
2033
2034
  case "Type":
2034
- return map(formatTypeMessage(issue), (message) => [makeArrayFormatterIssue(_tag, path, message)])
2035
+ return map(formatTypeMessage(issue), (message) => [makeArrayFormatterIssue(parentTag ?? _tag, path, message)])
2035
2036
  case "Forbidden":
2036
2037
  return Either.right([makeArrayFormatterIssue(_tag, path, formatForbiddenMessage(issue))])
2037
2038
  case "Unexpected":
@@ -2039,23 +2040,29 @@ const getArrayFormatterIssues = (
2039
2040
  case "Missing":
2040
2041
  return map(formatMissingMessage(issue), (message) => [makeArrayFormatterIssue(_tag, path, message)])
2041
2042
  case "Pointer":
2042
- return getArrayFormatterIssues(issue.issue, path.concat(issue.path))
2043
+ return getArrayFormatterIssues(issue.issue, undefined, path.concat(issue.path))
2043
2044
  case "Composite":
2044
2045
  return flatMap(getMessage(issue), (message) => {
2045
2046
  if (message !== undefined) {
2046
- return Either.right([makeArrayFormatterIssue(issue._tag, path, message)])
2047
+ return Either.right([makeArrayFormatterIssue(_tag, path, message)])
2047
2048
  }
2048
2049
  return util_.isNonEmpty(issue.issues)
2049
- ? map(Effect.forEach(issue.issues, (issue) => getArrayFormatterIssues(issue, path)), Arr.flatten)
2050
- : getArrayFormatterIssues(issue.issues, path)
2050
+ ? map(Effect.forEach(issue.issues, (issue) => getArrayFormatterIssues(issue, undefined, path)), Arr.flatten)
2051
+ : getArrayFormatterIssues(issue.issues, undefined, path)
2051
2052
  })
2052
2053
  case "Refinement":
2054
+ return flatMap(getMessage(issue), (message) => {
2055
+ if (message !== undefined) {
2056
+ return Either.right([makeArrayFormatterIssue(_tag, path, message)])
2057
+ }
2058
+ return getArrayFormatterIssues(issue.issue, issue.kind === "Predicate" ? _tag : undefined, path)
2059
+ })
2053
2060
  case "Transformation":
2054
2061
  return flatMap(getMessage(issue), (message) => {
2055
2062
  if (message !== undefined) {
2056
- return Either.right([makeArrayFormatterIssue(issue._tag, path, message)])
2063
+ return Either.right([makeArrayFormatterIssue(_tag, path, message)])
2057
2064
  }
2058
- return getArrayFormatterIssues(issue.issue, path)
2065
+ return getArrayFormatterIssues(issue.issue, issue.kind === "Transformation" ? _tag : undefined, path)
2059
2066
  })
2060
2067
  }
2061
2068
  }
package/src/Pool.ts CHANGED
@@ -145,7 +145,7 @@ export const make: <A, E, R>(
145
145
  *
146
146
  * By default, the `timeToLiveStrategy` is set to "usage".
147
147
  *
148
- * ```ts
148
+ * ```ts skip-type-checking
149
149
  * import { createConnection } from "mysql2";
150
150
  * import { Duration, Effect, Pool } from "effect"
151
151
  *