effect 3.13.8 → 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 (333) 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/Pool.js +1 -1
  57. package/dist/cjs/Predicate.js +36 -77
  58. package/dist/cjs/Predicate.js.map +1 -1
  59. package/dist/cjs/Random.js +1 -2
  60. package/dist/cjs/Random.js.map +1 -1
  61. package/dist/cjs/RcMap.js +5 -2
  62. package/dist/cjs/RcMap.js.map +1 -1
  63. package/dist/cjs/Record.js +28 -107
  64. package/dist/cjs/Record.js.map +1 -1
  65. package/dist/cjs/Redacted.js +3 -0
  66. package/dist/cjs/Redacted.js.map +1 -1
  67. package/dist/cjs/RegExp.js +2 -2
  68. package/dist/cjs/RegExp.js.map +1 -1
  69. package/dist/cjs/STM.js +3 -5
  70. package/dist/cjs/STM.js.map +1 -1
  71. package/dist/cjs/Schedule.js +2 -2
  72. package/dist/cjs/Schema.js +14 -13
  73. package/dist/cjs/Schema.js.map +1 -1
  74. package/dist/cjs/SchemaAST.js +0 -2
  75. package/dist/cjs/SchemaAST.js.map +1 -1
  76. package/dist/cjs/Sink.js +14 -10
  77. package/dist/cjs/Sink.js.map +1 -1
  78. package/dist/cjs/Stream.js +24 -25
  79. package/dist/cjs/Stream.js.map +1 -1
  80. package/dist/cjs/String.js +31 -2
  81. package/dist/cjs/String.js.map +1 -1
  82. package/dist/cjs/Struct.js +6 -0
  83. package/dist/cjs/Struct.js.map +1 -1
  84. package/dist/cjs/Symbol.js +1 -2
  85. package/dist/cjs/Symbol.js.map +1 -1
  86. package/dist/cjs/TestClock.js.map +1 -1
  87. package/dist/cjs/Trie.js +28 -0
  88. package/dist/cjs/Trie.js.map +1 -1
  89. package/dist/cjs/Tuple.js +9 -24
  90. package/dist/cjs/Tuple.js.map +1 -1
  91. package/dist/cjs/internal/matcher.js +1 -1
  92. package/dist/cjs/internal/matcher.js.map +1 -1
  93. package/dist/cjs/internal/version.js +1 -1
  94. package/dist/dts/Array.d.ts +1235 -1188
  95. package/dist/dts/Array.d.ts.map +1 -1
  96. package/dist/dts/BigDecimal.d.ts +61 -189
  97. package/dist/dts/BigDecimal.d.ts.map +1 -1
  98. package/dist/dts/BigInt.d.ts +57 -165
  99. package/dist/dts/BigInt.d.ts.map +1 -1
  100. package/dist/dts/Boolean.d.ts +28 -18
  101. package/dist/dts/Boolean.d.ts.map +1 -1
  102. package/dist/dts/Brand.d.ts +3 -3
  103. package/dist/dts/Brand.d.ts.map +1 -1
  104. package/dist/dts/Channel.d.ts +0 -6
  105. package/dist/dts/Channel.d.ts.map +1 -1
  106. package/dist/dts/Chunk.d.ts +15 -0
  107. package/dist/dts/Chunk.d.ts.map +1 -1
  108. package/dist/dts/Config.d.ts +0 -5
  109. package/dist/dts/Config.d.ts.map +1 -1
  110. package/dist/dts/Context.d.ts +26 -54
  111. package/dist/dts/Context.d.ts.map +1 -1
  112. package/dist/dts/Cron.d.ts +9 -23
  113. package/dist/dts/Cron.d.ts.map +1 -1
  114. package/dist/dts/Data.d.ts +8 -0
  115. package/dist/dts/Data.d.ts.map +1 -1
  116. package/dist/dts/DateTime.d.ts +6 -0
  117. package/dist/dts/DateTime.d.ts.map +1 -1
  118. package/dist/dts/Duration.d.ts +2 -2
  119. package/dist/dts/Effect.d.ts +153 -71
  120. package/dist/dts/Effect.d.ts.map +1 -1
  121. package/dist/dts/Either.d.ts +44 -57
  122. package/dist/dts/Either.d.ts.map +1 -1
  123. package/dist/dts/Encoding.d.ts +1 -1
  124. package/dist/dts/Equivalence.d.ts +1 -1
  125. package/dist/dts/Function.d.ts +55 -59
  126. package/dist/dts/Function.d.ts.map +1 -1
  127. package/dist/dts/HashMap.d.ts +0 -9
  128. package/dist/dts/HashMap.d.ts.map +1 -1
  129. package/dist/dts/Iterable.d.ts +13 -2
  130. package/dist/dts/Iterable.d.ts.map +1 -1
  131. package/dist/dts/List.d.ts +10 -0
  132. package/dist/dts/List.d.ts.map +1 -1
  133. package/dist/dts/Logger.d.ts +0 -6
  134. package/dist/dts/Logger.d.ts.map +1 -1
  135. package/dist/dts/Mailbox.d.ts +1 -0
  136. package/dist/dts/Mailbox.d.ts.map +1 -1
  137. package/dist/dts/ManagedRuntime.d.ts +0 -2
  138. package/dist/dts/ManagedRuntime.d.ts.map +1 -1
  139. package/dist/dts/Metric.d.ts +14 -20
  140. package/dist/dts/Metric.d.ts.map +1 -1
  141. package/dist/dts/Micro.d.ts +1 -1
  142. package/dist/dts/Number.d.ts +52 -155
  143. package/dist/dts/Number.d.ts.map +1 -1
  144. package/dist/dts/Option.d.ts +12 -0
  145. package/dist/dts/Option.d.ts.map +1 -1
  146. package/dist/dts/Order.d.ts +1 -0
  147. package/dist/dts/Order.d.ts.map +1 -1
  148. package/dist/dts/Ordering.d.ts +4 -17
  149. package/dist/dts/Ordering.d.ts.map +1 -1
  150. package/dist/dts/Pool.d.ts +1 -1
  151. package/dist/dts/Predicate.d.ts +56 -133
  152. package/dist/dts/Predicate.d.ts.map +1 -1
  153. package/dist/dts/Random.d.ts +1 -2
  154. package/dist/dts/Random.d.ts.map +1 -1
  155. package/dist/dts/RcMap.d.ts +15 -6
  156. package/dist/dts/RcMap.d.ts.map +1 -1
  157. package/dist/dts/Record.d.ts +68 -279
  158. package/dist/dts/Record.d.ts.map +1 -1
  159. package/dist/dts/Redacted.d.ts +3 -0
  160. package/dist/dts/Redacted.d.ts.map +1 -1
  161. package/dist/dts/RegExp.d.ts +2 -2
  162. package/dist/dts/RegExp.d.ts.map +1 -1
  163. package/dist/dts/STM.d.ts +5 -7
  164. package/dist/dts/STM.d.ts.map +1 -1
  165. package/dist/dts/Schedule.d.ts +7 -7
  166. package/dist/dts/Schema.d.ts +31 -25
  167. package/dist/dts/Schema.d.ts.map +1 -1
  168. package/dist/dts/SchemaAST.d.ts +0 -2
  169. package/dist/dts/SchemaAST.d.ts.map +1 -1
  170. package/dist/dts/Sink.d.ts +14 -10
  171. package/dist/dts/Sink.d.ts.map +1 -1
  172. package/dist/dts/Stream.d.ts +58 -62
  173. package/dist/dts/Stream.d.ts.map +1 -1
  174. package/dist/dts/String.d.ts +47 -2
  175. package/dist/dts/String.d.ts.map +1 -1
  176. package/dist/dts/Struct.d.ts +12 -0
  177. package/dist/dts/Struct.d.ts.map +1 -1
  178. package/dist/dts/Symbol.d.ts +1 -2
  179. package/dist/dts/Symbol.d.ts.map +1 -1
  180. package/dist/dts/TestClock.d.ts +2 -1
  181. package/dist/dts/TestClock.d.ts.map +1 -1
  182. package/dist/dts/Trie.d.ts +66 -0
  183. package/dist/dts/Trie.d.ts.map +1 -1
  184. package/dist/dts/Tuple.d.ts +21 -62
  185. package/dist/dts/Tuple.d.ts.map +1 -1
  186. package/dist/dts/Utils.d.ts +8 -8
  187. package/dist/esm/Array.js +474 -442
  188. package/dist/esm/Array.js.map +1 -1
  189. package/dist/esm/BigDecimal.js +31 -89
  190. package/dist/esm/BigDecimal.js.map +1 -1
  191. package/dist/esm/BigInt.js +27 -71
  192. package/dist/esm/BigInt.js.map +1 -1
  193. package/dist/esm/Boolean.js +12 -10
  194. package/dist/esm/Boolean.js.map +1 -1
  195. package/dist/esm/Brand.js +2 -0
  196. package/dist/esm/Brand.js.map +1 -1
  197. package/dist/esm/Channel.js +0 -2
  198. package/dist/esm/Channel.js.map +1 -1
  199. package/dist/esm/Chunk.js +4 -0
  200. package/dist/esm/Chunk.js.map +1 -1
  201. package/dist/esm/Config.js +0 -5
  202. package/dist/esm/Config.js.map +1 -1
  203. package/dist/esm/Context.js +14 -24
  204. package/dist/esm/Context.js.map +1 -1
  205. package/dist/esm/Cron.js +11 -25
  206. package/dist/esm/Cron.js.map +1 -1
  207. package/dist/esm/Data.js +7 -0
  208. package/dist/esm/Data.js.map +1 -1
  209. package/dist/esm/DateTime.js +2 -0
  210. package/dist/esm/DateTime.js.map +1 -1
  211. package/dist/esm/Duration.js +2 -2
  212. package/dist/esm/Effect.js +123 -53
  213. package/dist/esm/Effect.js.map +1 -1
  214. package/dist/esm/Either.js +22 -25
  215. package/dist/esm/Either.js.map +1 -1
  216. package/dist/esm/Encoding.js +1 -1
  217. package/dist/esm/Equivalence.js +1 -1
  218. package/dist/esm/Function.js +21 -24
  219. package/dist/esm/Function.js.map +1 -1
  220. package/dist/esm/HashMap.js +0 -3
  221. package/dist/esm/HashMap.js.map +1 -1
  222. package/dist/esm/Iterable.js +9 -2
  223. package/dist/esm/Iterable.js.map +1 -1
  224. package/dist/esm/List.js +2 -0
  225. package/dist/esm/List.js.map +1 -1
  226. package/dist/esm/Logger.js +0 -2
  227. package/dist/esm/Logger.js.map +1 -1
  228. package/dist/esm/Mailbox.js +1 -0
  229. package/dist/esm/Mailbox.js.map +1 -1
  230. package/dist/esm/ManagedRuntime.js +0 -2
  231. package/dist/esm/ManagedRuntime.js.map +1 -1
  232. package/dist/esm/Metric.js +6 -12
  233. package/dist/esm/Metric.js.map +1 -1
  234. package/dist/esm/Micro.js +1 -1
  235. package/dist/esm/Number.js +22 -61
  236. package/dist/esm/Number.js.map +1 -1
  237. package/dist/esm/Option.js +6 -0
  238. package/dist/esm/Option.js.map +1 -1
  239. package/dist/esm/Order.js +1 -0
  240. package/dist/esm/Order.js.map +1 -1
  241. package/dist/esm/Ordering.js +2 -7
  242. package/dist/esm/Ordering.js.map +1 -1
  243. package/dist/esm/Pool.js +1 -1
  244. package/dist/esm/Predicate.js +36 -77
  245. package/dist/esm/Predicate.js.map +1 -1
  246. package/dist/esm/Random.js +1 -2
  247. package/dist/esm/Random.js.map +1 -1
  248. package/dist/esm/RcMap.js +5 -2
  249. package/dist/esm/RcMap.js.map +1 -1
  250. package/dist/esm/Record.js +28 -107
  251. package/dist/esm/Record.js.map +1 -1
  252. package/dist/esm/Redacted.js +3 -0
  253. package/dist/esm/Redacted.js.map +1 -1
  254. package/dist/esm/RegExp.js +2 -2
  255. package/dist/esm/RegExp.js.map +1 -1
  256. package/dist/esm/STM.js +3 -5
  257. package/dist/esm/STM.js.map +1 -1
  258. package/dist/esm/Schedule.js +2 -2
  259. package/dist/esm/Schema.js +14 -13
  260. package/dist/esm/Schema.js.map +1 -1
  261. package/dist/esm/SchemaAST.js +0 -2
  262. package/dist/esm/SchemaAST.js.map +1 -1
  263. package/dist/esm/Sink.js +14 -10
  264. package/dist/esm/Sink.js.map +1 -1
  265. package/dist/esm/Stream.js +25 -25
  266. package/dist/esm/Stream.js.map +1 -1
  267. package/dist/esm/String.js +31 -2
  268. package/dist/esm/String.js.map +1 -1
  269. package/dist/esm/Struct.js +6 -0
  270. package/dist/esm/Struct.js.map +1 -1
  271. package/dist/esm/Symbol.js +1 -2
  272. package/dist/esm/Symbol.js.map +1 -1
  273. package/dist/esm/TestClock.js.map +1 -1
  274. package/dist/esm/Trie.js +28 -0
  275. package/dist/esm/Trie.js.map +1 -1
  276. package/dist/esm/Tuple.js +11 -30
  277. package/dist/esm/Tuple.js.map +1 -1
  278. package/dist/esm/internal/matcher.js +1 -1
  279. package/dist/esm/internal/matcher.js.map +1 -1
  280. package/dist/esm/internal/version.js +1 -1
  281. package/package.json +1 -1
  282. package/src/Array.ts +1235 -1188
  283. package/src/BigDecimal.ts +61 -189
  284. package/src/BigInt.ts +57 -165
  285. package/src/Boolean.ts +28 -18
  286. package/src/Brand.ts +3 -3
  287. package/src/Channel.ts +0 -6
  288. package/src/Chunk.ts +16 -0
  289. package/src/Config.ts +0 -5
  290. package/src/Context.ts +26 -54
  291. package/src/Cron.ts +11 -25
  292. package/src/Data.ts +8 -0
  293. package/src/DateTime.ts +6 -0
  294. package/src/Duration.ts +2 -2
  295. package/src/Effect.ts +153 -71
  296. package/src/Either.ts +45 -58
  297. package/src/Encoding.ts +1 -1
  298. package/src/Equivalence.ts +1 -1
  299. package/src/Function.ts +55 -59
  300. package/src/HashMap.ts +0 -9
  301. package/src/Iterable.ts +13 -2
  302. package/src/List.ts +12 -0
  303. package/src/Logger.ts +0 -6
  304. package/src/Mailbox.ts +1 -0
  305. package/src/ManagedRuntime.ts +0 -2
  306. package/src/Metric.ts +14 -20
  307. package/src/Micro.ts +1 -1
  308. package/src/Number.ts +52 -155
  309. package/src/Option.ts +12 -0
  310. package/src/Order.ts +1 -0
  311. package/src/Ordering.ts +4 -17
  312. package/src/Pool.ts +1 -1
  313. package/src/Predicate.ts +56 -133
  314. package/src/Random.ts +1 -2
  315. package/src/RcMap.ts +15 -6
  316. package/src/Record.ts +68 -279
  317. package/src/Redacted.ts +3 -0
  318. package/src/RegExp.ts +2 -2
  319. package/src/STM.ts +5 -7
  320. package/src/Schedule.ts +7 -7
  321. package/src/Schema.ts +31 -25
  322. package/src/SchemaAST.ts +0 -2
  323. package/src/Sink.ts +14 -10
  324. package/src/Stream.ts +56 -61
  325. package/src/String.ts +47 -2
  326. package/src/Struct.ts +12 -0
  327. package/src/Symbol.ts +1 -2
  328. package/src/TestClock.ts +2 -1
  329. package/src/Trie.ts +66 -0
  330. package/src/Tuple.ts +21 -62
  331. package/src/Utils.ts +8 -8
  332. package/src/internal/matcher.ts +1 -1
  333. package/src/internal/version.ts +1 -1
package/src/Tuple.ts CHANGED
@@ -20,10 +20,9 @@ export interface TupleTypeLambda extends TypeLambda {
20
20
  /**
21
21
  * Constructs a new tuple from the provided values.
22
22
  *
23
- * @param elements - The list of elements to create the tuple from.
24
- *
25
23
  * @example
26
24
  * ```ts
25
+ * import * as assert from "node:assert"
27
26
  * import { make } from "effect/Tuple"
28
27
  *
29
28
  * assert.deepStrictEqual(make(1, 'hello', true), [1, 'hello', true])
@@ -37,10 +36,9 @@ export const make = <A extends ReadonlyArray<any>>(...elements: A): A => element
37
36
  /**
38
37
  * Return the first element of a tuple.
39
38
  *
40
- * @param self - A tuple of length `2`.
41
- *
42
39
  * @example
43
40
  * ```ts
41
+ * import * as assert from "node:assert"
44
42
  * import { getFirst } from "effect/Tuple"
45
43
  *
46
44
  * assert.deepStrictEqual(getFirst(["hello", 42]), "hello")
@@ -54,10 +52,9 @@ export const getFirst = <L, R>(self: readonly [L, R]): L => self[0]
54
52
  /**
55
53
  * Return the second element of a tuple.
56
54
  *
57
- * @param self - A tuple of length `2`.
58
- *
59
55
  * @example
60
56
  * ```ts
57
+ * import * as assert from "node:assert"
61
58
  * import { getSecond } from "effect/Tuple"
62
59
  *
63
60
  * assert.deepStrictEqual(getSecond(["hello", 42]), 42)
@@ -71,11 +68,9 @@ export const getSecond = <L, R>(self: readonly [L, R]): R => self[1]
71
68
  /**
72
69
  * Transforms each element of tuple using the given function, treating tuple homomorphically
73
70
  *
74
- * @param self - A tuple.
75
- * @param f - The function to transform elements of the tuple.
76
- *
77
71
  * @example
78
72
  * ```ts
73
+ * import * as assert from "node:assert"
79
74
  * import { pipe, Tuple } from "effect"
80
75
  *
81
76
  * const result = pipe(
@@ -92,11 +87,9 @@ export const map: {
92
87
  /**
93
88
  * Transforms each element of tuple using the given function, treating tuple homomorphically
94
89
  *
95
- * @param self - A tuple.
96
- * @param f - The function to transform elements of the tuple.
97
- *
98
90
  * @example
99
91
  * ```ts
92
+ * import * as assert from "node:assert"
100
93
  * import { pipe, Tuple } from "effect"
101
94
  *
102
95
  * const result = pipe(
@@ -113,11 +106,9 @@ export const map: {
113
106
  /**
114
107
  * Transforms each element of tuple using the given function, treating tuple homomorphically
115
108
  *
116
- * @param self - A tuple.
117
- * @param f - The function to transform elements of the tuple.
118
- *
119
109
  * @example
120
110
  * ```ts
111
+ * import * as assert from "node:assert"
121
112
  * import { pipe, Tuple } from "effect"
122
113
  *
123
114
  * const result = pipe(
@@ -142,12 +133,9 @@ export const map: {
142
133
  /**
143
134
  * Transforms both elements of a tuple using the given functions.
144
135
  *
145
- * @param self - A tuple of length `2`.
146
- * @param f - The function to transform the first element of the tuple.
147
- * @param g - The function to transform the second element of the tuple.
148
- *
149
136
  * @example
150
137
  * ```ts
138
+ * import * as assert from "node:assert"
151
139
  * import { mapBoth } from "effect/Tuple"
152
140
  *
153
141
  * assert.deepStrictEqual(
@@ -163,12 +151,9 @@ export const mapBoth: {
163
151
  /**
164
152
  * Transforms both elements of a tuple using the given functions.
165
153
  *
166
- * @param self - A tuple of length `2`.
167
- * @param f - The function to transform the first element of the tuple.
168
- * @param g - The function to transform the second element of the tuple.
169
- *
170
154
  * @example
171
155
  * ```ts
156
+ * import * as assert from "node:assert"
172
157
  * import { mapBoth } from "effect/Tuple"
173
158
  *
174
159
  * assert.deepStrictEqual(
@@ -189,12 +174,9 @@ export const mapBoth: {
189
174
  /**
190
175
  * Transforms both elements of a tuple using the given functions.
191
176
  *
192
- * @param self - A tuple of length `2`.
193
- * @param f - The function to transform the first element of the tuple.
194
- * @param g - The function to transform the second element of the tuple.
195
- *
196
177
  * @example
197
178
  * ```ts
179
+ * import * as assert from "node:assert"
198
180
  * import { mapBoth } from "effect/Tuple"
199
181
  *
200
182
  * assert.deepStrictEqual(
@@ -227,11 +209,9 @@ export const mapBoth: {
227
209
  /**
228
210
  * Transforms the first component of a tuple using a given function.
229
211
  *
230
- * @param self - A tuple of length `2`.
231
- * @param f - The function to transform the first element of the tuple.
232
- *
233
212
  * @example
234
213
  * ```ts
214
+ * import * as assert from "node:assert"
235
215
  * import { mapFirst } from "effect/Tuple"
236
216
  *
237
217
  * assert.deepStrictEqual(
@@ -247,11 +227,9 @@ export const mapFirst: {
247
227
  /**
248
228
  * Transforms the first component of a tuple using a given function.
249
229
  *
250
- * @param self - A tuple of length `2`.
251
- * @param f - The function to transform the first element of the tuple.
252
- *
253
230
  * @example
254
231
  * ```ts
232
+ * import * as assert from "node:assert"
255
233
  * import { mapFirst } from "effect/Tuple"
256
234
  *
257
235
  * assert.deepStrictEqual(
@@ -267,11 +245,9 @@ export const mapFirst: {
267
245
  /**
268
246
  * Transforms the first component of a tuple using a given function.
269
247
  *
270
- * @param self - A tuple of length `2`.
271
- * @param f - The function to transform the first element of the tuple.
272
- *
273
248
  * @example
274
249
  * ```ts
250
+ * import * as assert from "node:assert"
275
251
  * import { mapFirst } from "effect/Tuple"
276
252
  *
277
253
  * assert.deepStrictEqual(
@@ -289,11 +265,9 @@ export const mapFirst: {
289
265
  /**
290
266
  * Transforms the second component of a tuple using a given function.
291
267
  *
292
- * @param self - A tuple of length `2`.
293
- * @param f - The function to transform the second element of the tuple.
294
- *
295
268
  * @example
296
269
  * ```ts
270
+ * import * as assert from "node:assert"
297
271
  * import { mapSecond } from "effect/Tuple"
298
272
  *
299
273
  * assert.deepStrictEqual(
@@ -309,11 +283,9 @@ export const mapSecond: {
309
283
  /**
310
284
  * Transforms the second component of a tuple using a given function.
311
285
  *
312
- * @param self - A tuple of length `2`.
313
- * @param f - The function to transform the second element of the tuple.
314
- *
315
286
  * @example
316
287
  * ```ts
288
+ * import * as assert from "node:assert"
317
289
  * import { mapSecond } from "effect/Tuple"
318
290
  *
319
291
  * assert.deepStrictEqual(
@@ -329,11 +301,9 @@ export const mapSecond: {
329
301
  /**
330
302
  * Transforms the second component of a tuple using a given function.
331
303
  *
332
- * @param self - A tuple of length `2`.
333
- * @param f - The function to transform the second element of the tuple.
334
- *
335
304
  * @example
336
305
  * ```ts
306
+ * import * as assert from "node:assert"
337
307
  * import { mapSecond } from "effect/Tuple"
338
308
  *
339
309
  * assert.deepStrictEqual(
@@ -351,10 +321,9 @@ export const mapSecond: {
351
321
  /**
352
322
  * Swaps the two elements of a tuple.
353
323
  *
354
- * @param self - A tuple of length `2`.
355
- *
356
324
  * @example
357
325
  * ```ts
326
+ * import * as assert from "node:assert"
358
327
  * import { swap } from "effect/Tuple"
359
328
  *
360
329
  * assert.deepStrictEqual(swap(["hello", 42]), [42, "hello"])
@@ -416,11 +385,9 @@ export const appendElement: {
416
385
  /**
417
386
  * Retrieves the element at a specified index from a tuple.
418
387
  *
419
- * @param self - A tuple from which to retrieve the element.
420
- * @param index - The index of the element to retrieve.
421
- *
422
388
  * @example
423
389
  * ```ts
390
+ * import * as assert from "node:assert"
424
391
  * import { Tuple } from "effect"
425
392
  *
426
393
  * assert.deepStrictEqual(Tuple.at([1, 'hello', true], 1), 'hello')
@@ -433,11 +400,9 @@ export const at: {
433
400
  /**
434
401
  * Retrieves the element at a specified index from a tuple.
435
402
  *
436
- * @param self - A tuple from which to retrieve the element.
437
- * @param index - The index of the element to retrieve.
438
- *
439
403
  * @example
440
404
  * ```ts
405
+ * import * as assert from "node:assert"
441
406
  * import { Tuple } from "effect"
442
407
  *
443
408
  * assert.deepStrictEqual(Tuple.at([1, 'hello', true], 1), 'hello')
@@ -450,11 +415,9 @@ export const at: {
450
415
  /**
451
416
  * Retrieves the element at a specified index from a tuple.
452
417
  *
453
- * @param self - A tuple from which to retrieve the element.
454
- * @param index - The index of the element to retrieve.
455
- *
456
418
  * @example
457
419
  * ```ts
420
+ * import * as assert from "node:assert"
458
421
  * import { Tuple } from "effect"
459
422
  *
460
423
  * assert.deepStrictEqual(Tuple.at([1, 'hello', true], 1), 'hello')
@@ -472,11 +435,9 @@ export {
472
435
  *
473
436
  * An `Array` is considered to be a `TupleOf` if its length is exactly `N`.
474
437
  *
475
- * @param self - The `Array` to check.
476
- * @param n - The exact number of elements that the `Array` should have to be considered a `TupleOf`.
477
- *
478
438
  * @example
479
439
  * ```ts
440
+ * import * as assert from "node:assert"
480
441
  * import { isTupleOf } from "effect/Tuple"
481
442
  *
482
443
  * assert.deepStrictEqual(isTupleOf([1, 2, 3], 3), true);
@@ -499,11 +460,9 @@ export {
499
460
  *
500
461
  * An `Array` is considered to be a `TupleOfAtLeast` if its length is at least `N`.
501
462
  *
502
- * @param self - The `Array` to check.
503
- * @param n - The minimum number of elements that the `Array` should have to be considered a `TupleOfAtLeast`.
504
- *
505
463
  * @example
506
464
  * ```ts
465
+ * import * as assert from "node:assert"
507
466
  * import { isTupleOfAtLeast } from "effect/Tuple"
508
467
  *
509
468
  * assert.deepStrictEqual(isTupleOfAtLeast([1, 2, 3], 3), true);
package/src/Utils.ts CHANGED
@@ -519,7 +519,7 @@ export class PCGRandom {
519
519
  /**
520
520
  * Creates an instance of PCGRandom.
521
521
  *
522
- * @param seed - The low 32 bits of the seed (0 is used for high 32 bits).
522
+ * - `seed` - The low 32 bits of the seed (0 is used for high 32 bits).
523
523
  *
524
524
  * @memberOf PCGRandom
525
525
  */
@@ -527,9 +527,9 @@ export class PCGRandom {
527
527
  /**
528
528
  * Creates an instance of PCGRandom.
529
529
  *
530
- * @param seedHi - The high 32 bits of the seed.
531
- * @param seedLo - The low 32 bits of the seed.
532
- * @param inc - The low 32 bits of the incrementer (0 is used for high 32 bits).
530
+ * - `seedHi` - The high 32 bits of the seed.
531
+ * - `seedLo` - The low 32 bits of the seed.
532
+ * - `inc` - The low 32 bits of the incrementer (0 is used for high 32 bits).
533
533
  *
534
534
  * @memberOf PCGRandom
535
535
  */
@@ -537,10 +537,10 @@ export class PCGRandom {
537
537
  /**
538
538
  * Creates an instance of PCGRandom.
539
539
  *
540
- * @param seedHi - The high 32 bits of the seed.
541
- * @param seedLo - The low 32 bits of the seed.
542
- * @param incHi - The high 32 bits of the incrementer.
543
- * @param incLo - The low 32 bits of the incrementer.
540
+ * - `seedHi` - The high 32 bits of the seed.
541
+ * - `seedLo` - The low 32 bits of the seed.
542
+ * - `incHi` - The high 32 bits of the incrementer.
543
+ * - `incLo` - The low 32 bits of the incrementer.
544
544
  *
545
545
  * @memberOf PCGRandom
546
546
  */
@@ -396,7 +396,7 @@ export const discriminators = <D extends string>(field: D) =>
396
396
  fields: P
397
397
  ) => {
398
398
  const predicate = makeWhen(
399
- (_: any) => _[field] in fields,
399
+ (arg: any) => arg != null && arg[field] in fields,
400
400
  (data: any) => (fields as any)[data[field]](data)
401
401
  )
402
402
 
@@ -1,4 +1,4 @@
1
- let moduleVersion = "3.13.8"
1
+ let moduleVersion = "3.13.9"
2
2
 
3
3
  export const getCurrentVersion = () => moduleVersion
4
4