effect 3.10.18 → 3.11.0

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 (448) hide show
  1. package/dist/cjs/Array.js +206 -0
  2. package/dist/cjs/Array.js.map +1 -1
  3. package/dist/cjs/BigDecimal.js +181 -24
  4. package/dist/cjs/BigDecimal.js.map +1 -1
  5. package/dist/cjs/BigInt.js +54 -0
  6. package/dist/cjs/BigInt.js.map +1 -1
  7. package/dist/cjs/Boolean.js +24 -0
  8. package/dist/cjs/Boolean.js.map +1 -1
  9. package/dist/cjs/Brand.js +4 -0
  10. package/dist/cjs/Brand.js.map +1 -1
  11. package/dist/cjs/Channel.js +44 -4
  12. package/dist/cjs/Channel.js.map +1 -1
  13. package/dist/cjs/Chunk.js +8 -0
  14. package/dist/cjs/Chunk.js.map +1 -1
  15. package/dist/cjs/Config.js +10 -1
  16. package/dist/cjs/Config.js.map +1 -1
  17. package/dist/cjs/Context.js +50 -1
  18. package/dist/cjs/Context.js.map +1 -1
  19. package/dist/cjs/Cron.js +81 -67
  20. package/dist/cjs/Cron.js.map +1 -1
  21. package/dist/cjs/Data.js +14 -0
  22. package/dist/cjs/Data.js.map +1 -1
  23. package/dist/cjs/DateTime.js +178 -664
  24. package/dist/cjs/DateTime.js.map +1 -1
  25. package/dist/cjs/Duration.js +2 -0
  26. package/dist/cjs/Duration.js.map +1 -1
  27. package/dist/cjs/Effect.js +296 -4
  28. package/dist/cjs/Effect.js.map +1 -1
  29. package/dist/cjs/Either.js +38 -2
  30. package/dist/cjs/Either.js.map +1 -1
  31. package/dist/cjs/FiberHandle.js +6 -0
  32. package/dist/cjs/FiberHandle.js.map +1 -1
  33. package/dist/cjs/FiberMap.js +6 -0
  34. package/dist/cjs/FiberMap.js.map +1 -1
  35. package/dist/cjs/FiberSet.js +6 -0
  36. package/dist/cjs/FiberSet.js.map +1 -1
  37. package/dist/cjs/Function.js +34 -0
  38. package/dist/cjs/Function.js.map +1 -1
  39. package/dist/cjs/GlobalValue.js +2 -0
  40. package/dist/cjs/GlobalValue.js.map +1 -1
  41. package/dist/cjs/HashMap.js.map +1 -1
  42. package/dist/cjs/Inspectable.js +8 -4
  43. package/dist/cjs/Inspectable.js.map +1 -1
  44. package/dist/cjs/Iterable.js +18 -0
  45. package/dist/cjs/Iterable.js.map +1 -1
  46. package/dist/cjs/JSONSchema.js.map +1 -1
  47. package/dist/cjs/List.js +4 -0
  48. package/dist/cjs/List.js.map +1 -1
  49. package/dist/cjs/Logger.js +26 -0
  50. package/dist/cjs/Logger.js.map +1 -1
  51. package/dist/cjs/Mailbox.js +2 -0
  52. package/dist/cjs/Mailbox.js.map +1 -1
  53. package/dist/cjs/ManagedRuntime.js +2 -0
  54. package/dist/cjs/ManagedRuntime.js.map +1 -1
  55. package/dist/cjs/Metric.js +10 -0
  56. package/dist/cjs/Metric.js.map +1 -1
  57. package/dist/cjs/Micro.js +1104 -1069
  58. package/dist/cjs/Micro.js.map +1 -1
  59. package/dist/cjs/Number.js +44 -0
  60. package/dist/cjs/Number.js.map +1 -1
  61. package/dist/cjs/Option.js +70 -0
  62. package/dist/cjs/Option.js.map +1 -1
  63. package/dist/cjs/Order.js +2 -0
  64. package/dist/cjs/Order.js.map +1 -1
  65. package/dist/cjs/Ordering.js +4 -0
  66. package/dist/cjs/Ordering.js.map +1 -1
  67. package/dist/cjs/Predicate.js +68 -0
  68. package/dist/cjs/Predicate.js.map +1 -1
  69. package/dist/cjs/Random.js +4 -0
  70. package/dist/cjs/Random.js.map +1 -1
  71. package/dist/cjs/RateLimiter.js +4 -0
  72. package/dist/cjs/RateLimiter.js.map +1 -1
  73. package/dist/cjs/RcMap.js +2 -0
  74. package/dist/cjs/RcMap.js.map +1 -1
  75. package/dist/cjs/RcRef.js +2 -0
  76. package/dist/cjs/RcRef.js.map +1 -1
  77. package/dist/cjs/Record.js +56 -0
  78. package/dist/cjs/Record.js.map +1 -1
  79. package/dist/cjs/Redacted.js +8 -0
  80. package/dist/cjs/Redacted.js.map +1 -1
  81. package/dist/cjs/RegExp.js +4 -0
  82. package/dist/cjs/RegExp.js.map +1 -1
  83. package/dist/cjs/Request.js +4 -0
  84. package/dist/cjs/Request.js.map +1 -1
  85. package/dist/cjs/RequestResolver.js +2 -0
  86. package/dist/cjs/RequestResolver.js.map +1 -1
  87. package/dist/cjs/Runtime.js +6 -0
  88. package/dist/cjs/Runtime.js.map +1 -1
  89. package/dist/cjs/STM.js.map +1 -1
  90. package/dist/cjs/Schema.js +91 -8
  91. package/dist/cjs/Schema.js.map +1 -1
  92. package/dist/cjs/Sink.js +9 -1
  93. package/dist/cjs/Sink.js.map +1 -1
  94. package/dist/cjs/Stream.js +179 -7
  95. package/dist/cjs/Stream.js.map +1 -1
  96. package/dist/cjs/String.js +62 -0
  97. package/dist/cjs/String.js.map +1 -1
  98. package/dist/cjs/Struct.js +12 -0
  99. package/dist/cjs/Struct.js.map +1 -1
  100. package/dist/cjs/Symbol.js +2 -0
  101. package/dist/cjs/Symbol.js.map +1 -1
  102. package/dist/cjs/Trie.js +56 -0
  103. package/dist/cjs/Trie.js.map +1 -1
  104. package/dist/cjs/Tuple.js +18 -0
  105. package/dist/cjs/Tuple.js.map +1 -1
  106. package/dist/cjs/Utils.js +7 -1
  107. package/dist/cjs/Utils.js.map +1 -1
  108. package/dist/cjs/internal/channel/channelExecutor.js +5 -9
  109. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  110. package/dist/cjs/internal/channel.js +156 -130
  111. package/dist/cjs/internal/channel.js.map +1 -1
  112. package/dist/cjs/internal/config.js +13 -4
  113. package/dist/cjs/internal/config.js.map +1 -1
  114. package/dist/cjs/internal/context.js +46 -3
  115. package/dist/cjs/internal/context.js.map +1 -1
  116. package/dist/cjs/internal/dateTime.js +747 -0
  117. package/dist/cjs/internal/dateTime.js.map +1 -0
  118. package/dist/cjs/internal/fiberRuntime.js +34 -11
  119. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  120. package/dist/cjs/internal/groupBy.js +9 -3
  121. package/dist/cjs/internal/groupBy.js.map +1 -1
  122. package/dist/cjs/internal/layer.js +1 -1
  123. package/dist/cjs/internal/layer.js.map +1 -1
  124. package/dist/cjs/internal/mailbox.js +1 -1
  125. package/dist/cjs/internal/mailbox.js.map +1 -1
  126. package/dist/cjs/internal/sink.js +25 -21
  127. package/dist/cjs/internal/sink.js.map +1 -1
  128. package/dist/cjs/internal/stream.js +70 -71
  129. package/dist/cjs/internal/stream.js.map +1 -1
  130. package/dist/cjs/internal/version.js +1 -1
  131. package/dist/cjs/internal/version.js.map +1 -1
  132. package/dist/dts/Array.d.ts +534 -0
  133. package/dist/dts/Array.d.ts.map +1 -1
  134. package/dist/dts/BigDecimal.d.ts +172 -1
  135. package/dist/dts/BigDecimal.d.ts.map +1 -1
  136. package/dist/dts/BigInt.d.ts +114 -0
  137. package/dist/dts/BigInt.d.ts.map +1 -1
  138. package/dist/dts/Boolean.d.ts +56 -0
  139. package/dist/dts/Boolean.d.ts.map +1 -1
  140. package/dist/dts/Brand.d.ts +6 -0
  141. package/dist/dts/Brand.d.ts.map +1 -1
  142. package/dist/dts/Channel.d.ts +66 -5
  143. package/dist/dts/Channel.d.ts.map +1 -1
  144. package/dist/dts/Chunk.d.ts +30 -0
  145. package/dist/dts/Chunk.d.ts.map +1 -1
  146. package/dist/dts/Config.d.ts +25 -1
  147. package/dist/dts/Config.d.ts.map +1 -1
  148. package/dist/dts/Context.d.ts +155 -0
  149. package/dist/dts/Context.d.ts.map +1 -1
  150. package/dist/dts/Cron.d.ts +21 -6
  151. package/dist/dts/Cron.d.ts.map +1 -1
  152. package/dist/dts/Data.d.ts +26 -0
  153. package/dist/dts/Data.d.ts.map +1 -1
  154. package/dist/dts/DateTime.d.ts +192 -49
  155. package/dist/dts/DateTime.d.ts.map +1 -1
  156. package/dist/dts/Duration.d.ts +2 -0
  157. package/dist/dts/Duration.d.ts.map +1 -1
  158. package/dist/dts/Effect.d.ts +658 -1
  159. package/dist/dts/Effect.d.ts.map +1 -1
  160. package/dist/dts/Either.d.ts +84 -2
  161. package/dist/dts/Either.d.ts.map +1 -1
  162. package/dist/dts/FiberHandle.d.ts +6 -0
  163. package/dist/dts/FiberHandle.d.ts.map +1 -1
  164. package/dist/dts/FiberMap.d.ts +6 -0
  165. package/dist/dts/FiberMap.d.ts.map +1 -1
  166. package/dist/dts/FiberSet.d.ts +6 -0
  167. package/dist/dts/FiberSet.d.ts.map +1 -1
  168. package/dist/dts/Function.d.ts +50 -0
  169. package/dist/dts/Function.d.ts.map +1 -1
  170. package/dist/dts/GlobalValue.d.ts +2 -0
  171. package/dist/dts/GlobalValue.d.ts.map +1 -1
  172. package/dist/dts/HashMap.d.ts +6 -0
  173. package/dist/dts/HashMap.d.ts.map +1 -1
  174. package/dist/dts/Inspectable.d.ts.map +1 -1
  175. package/dist/dts/Iterable.d.ts +26 -0
  176. package/dist/dts/Iterable.d.ts.map +1 -1
  177. package/dist/dts/JSONSchema.d.ts +1 -0
  178. package/dist/dts/JSONSchema.d.ts.map +1 -1
  179. package/dist/dts/List.d.ts +20 -0
  180. package/dist/dts/List.d.ts.map +1 -1
  181. package/dist/dts/Logger.d.ts +34 -0
  182. package/dist/dts/Logger.d.ts.map +1 -1
  183. package/dist/dts/Mailbox.d.ts +2 -0
  184. package/dist/dts/Mailbox.d.ts.map +1 -1
  185. package/dist/dts/ManagedRuntime.d.ts +2 -0
  186. package/dist/dts/ManagedRuntime.d.ts.map +1 -1
  187. package/dist/dts/Metric.d.ts +18 -0
  188. package/dist/dts/Metric.d.ts.map +1 -1
  189. package/dist/dts/Micro.d.ts +880 -863
  190. package/dist/dts/Micro.d.ts.map +1 -1
  191. package/dist/dts/Number.d.ts +104 -0
  192. package/dist/dts/Number.d.ts.map +1 -1
  193. package/dist/dts/Option.d.ts +142 -0
  194. package/dist/dts/Option.d.ts.map +1 -1
  195. package/dist/dts/Order.d.ts +2 -0
  196. package/dist/dts/Order.d.ts.map +1 -1
  197. package/dist/dts/Ordering.d.ts +8 -0
  198. package/dist/dts/Ordering.d.ts.map +1 -1
  199. package/dist/dts/Predicate.d.ts +104 -0
  200. package/dist/dts/Predicate.d.ts.map +1 -1
  201. package/dist/dts/Random.d.ts +4 -0
  202. package/dist/dts/Random.d.ts.map +1 -1
  203. package/dist/dts/RateLimiter.d.ts +4 -0
  204. package/dist/dts/RateLimiter.d.ts.map +1 -1
  205. package/dist/dts/RcMap.d.ts +6 -0
  206. package/dist/dts/RcMap.d.ts.map +1 -1
  207. package/dist/dts/RcRef.d.ts +2 -0
  208. package/dist/dts/RcRef.d.ts.map +1 -1
  209. package/dist/dts/Record.d.ts +136 -0
  210. package/dist/dts/Record.d.ts.map +1 -1
  211. package/dist/dts/Redacted.d.ts +8 -0
  212. package/dist/dts/Redacted.d.ts.map +1 -1
  213. package/dist/dts/RegExp.d.ts +4 -0
  214. package/dist/dts/RegExp.d.ts.map +1 -1
  215. package/dist/dts/Request.d.ts +4 -0
  216. package/dist/dts/Request.d.ts.map +1 -1
  217. package/dist/dts/RequestResolver.d.ts +6 -0
  218. package/dist/dts/RequestResolver.d.ts.map +1 -1
  219. package/dist/dts/Runtime.d.ts +18 -0
  220. package/dist/dts/Runtime.d.ts.map +1 -1
  221. package/dist/dts/STM.d.ts +2 -0
  222. package/dist/dts/STM.d.ts.map +1 -1
  223. package/dist/dts/Schema.d.ts +90 -0
  224. package/dist/dts/Schema.d.ts.map +1 -1
  225. package/dist/dts/Sink.d.ts +8 -0
  226. package/dist/dts/Sink.d.ts.map +1 -1
  227. package/dist/dts/Stream.d.ts +394 -32
  228. package/dist/dts/Stream.d.ts.map +1 -1
  229. package/dist/dts/String.d.ts +94 -0
  230. package/dist/dts/String.d.ts.map +1 -1
  231. package/dist/dts/Struct.d.ts +24 -0
  232. package/dist/dts/Struct.d.ts.map +1 -1
  233. package/dist/dts/Symbol.d.ts +2 -0
  234. package/dist/dts/Symbol.d.ts.map +1 -1
  235. package/dist/dts/Trie.d.ts +132 -0
  236. package/dist/dts/Trie.d.ts.map +1 -1
  237. package/dist/dts/Tuple.d.ts +42 -0
  238. package/dist/dts/Tuple.d.ts.map +1 -1
  239. package/dist/dts/Types.d.ts +24 -0
  240. package/dist/dts/Types.d.ts.map +1 -1
  241. package/dist/dts/Utils.d.ts +4 -0
  242. package/dist/dts/Utils.d.ts.map +1 -1
  243. package/dist/dts/internal/context.d.ts +1 -1
  244. package/dist/dts/internal/context.d.ts.map +1 -1
  245. package/dist/dts/internal/dateTime.d.ts +2 -0
  246. package/dist/dts/internal/dateTime.d.ts.map +1 -0
  247. package/dist/dts/internal/fiberRuntime.d.ts.map +1 -1
  248. package/dist/dts/internal/stream.d.ts.map +1 -1
  249. package/dist/esm/Array.js +208 -0
  250. package/dist/esm/Array.js.map +1 -1
  251. package/dist/esm/BigDecimal.js +175 -20
  252. package/dist/esm/BigDecimal.js.map +1 -1
  253. package/dist/esm/BigInt.js +54 -0
  254. package/dist/esm/BigInt.js.map +1 -1
  255. package/dist/esm/Boolean.js +24 -0
  256. package/dist/esm/Boolean.js.map +1 -1
  257. package/dist/esm/Brand.js +4 -0
  258. package/dist/esm/Brand.js.map +1 -1
  259. package/dist/esm/Channel.js +42 -2
  260. package/dist/esm/Channel.js.map +1 -1
  261. package/dist/esm/Chunk.js +8 -0
  262. package/dist/esm/Chunk.js.map +1 -1
  263. package/dist/esm/Config.js +9 -0
  264. package/dist/esm/Config.js.map +1 -1
  265. package/dist/esm/Context.js +49 -0
  266. package/dist/esm/Context.js.map +1 -1
  267. package/dist/esm/Cron.js +81 -67
  268. package/dist/esm/Cron.js.map +1 -1
  269. package/dist/esm/Data.js +16 -0
  270. package/dist/esm/Data.js.map +1 -1
  271. package/dist/esm/DateTime.js +176 -627
  272. package/dist/esm/DateTime.js.map +1 -1
  273. package/dist/esm/Duration.js +2 -0
  274. package/dist/esm/Duration.js.map +1 -1
  275. package/dist/esm/Effect.js +297 -0
  276. package/dist/esm/Effect.js.map +1 -1
  277. package/dist/esm/Either.js +40 -2
  278. package/dist/esm/Either.js.map +1 -1
  279. package/dist/esm/FiberHandle.js +6 -0
  280. package/dist/esm/FiberHandle.js.map +1 -1
  281. package/dist/esm/FiberMap.js +6 -0
  282. package/dist/esm/FiberMap.js.map +1 -1
  283. package/dist/esm/FiberSet.js +6 -0
  284. package/dist/esm/FiberSet.js.map +1 -1
  285. package/dist/esm/Function.js +34 -0
  286. package/dist/esm/Function.js.map +1 -1
  287. package/dist/esm/GlobalValue.js +2 -0
  288. package/dist/esm/GlobalValue.js.map +1 -1
  289. package/dist/esm/HashMap.js.map +1 -1
  290. package/dist/esm/Inspectable.js +8 -4
  291. package/dist/esm/Inspectable.js.map +1 -1
  292. package/dist/esm/Iterable.js +18 -0
  293. package/dist/esm/Iterable.js.map +1 -1
  294. package/dist/esm/JSONSchema.js.map +1 -1
  295. package/dist/esm/List.js +4 -0
  296. package/dist/esm/List.js.map +1 -1
  297. package/dist/esm/Logger.js +26 -0
  298. package/dist/esm/Logger.js.map +1 -1
  299. package/dist/esm/Mailbox.js +2 -0
  300. package/dist/esm/Mailbox.js.map +1 -1
  301. package/dist/esm/ManagedRuntime.js +2 -0
  302. package/dist/esm/ManagedRuntime.js.map +1 -1
  303. package/dist/esm/Metric.js +10 -0
  304. package/dist/esm/Metric.js.map +1 -1
  305. package/dist/esm/Micro.js +1077 -1037
  306. package/dist/esm/Micro.js.map +1 -1
  307. package/dist/esm/Number.js +44 -0
  308. package/dist/esm/Number.js.map +1 -1
  309. package/dist/esm/Option.js +72 -0
  310. package/dist/esm/Option.js.map +1 -1
  311. package/dist/esm/Order.js +2 -0
  312. package/dist/esm/Order.js.map +1 -1
  313. package/dist/esm/Ordering.js +4 -0
  314. package/dist/esm/Ordering.js.map +1 -1
  315. package/dist/esm/Predicate.js +68 -0
  316. package/dist/esm/Predicate.js.map +1 -1
  317. package/dist/esm/Random.js +4 -0
  318. package/dist/esm/Random.js.map +1 -1
  319. package/dist/esm/RateLimiter.js +4 -0
  320. package/dist/esm/RateLimiter.js.map +1 -1
  321. package/dist/esm/RcMap.js +2 -0
  322. package/dist/esm/RcMap.js.map +1 -1
  323. package/dist/esm/RcRef.js +2 -0
  324. package/dist/esm/RcRef.js.map +1 -1
  325. package/dist/esm/Record.js +56 -0
  326. package/dist/esm/Record.js.map +1 -1
  327. package/dist/esm/Redacted.js +8 -0
  328. package/dist/esm/Redacted.js.map +1 -1
  329. package/dist/esm/RegExp.js +4 -0
  330. package/dist/esm/RegExp.js.map +1 -1
  331. package/dist/esm/Request.js +4 -0
  332. package/dist/esm/Request.js.map +1 -1
  333. package/dist/esm/RequestResolver.js +2 -0
  334. package/dist/esm/RequestResolver.js.map +1 -1
  335. package/dist/esm/Runtime.js +6 -0
  336. package/dist/esm/Runtime.js.map +1 -1
  337. package/dist/esm/STM.js.map +1 -1
  338. package/dist/esm/Schema.js +88 -0
  339. package/dist/esm/Schema.js.map +1 -1
  340. package/dist/esm/Sink.js +8 -0
  341. package/dist/esm/Sink.js.map +1 -1
  342. package/dist/esm/Stream.js +183 -5
  343. package/dist/esm/Stream.js.map +1 -1
  344. package/dist/esm/String.js +62 -0
  345. package/dist/esm/String.js.map +1 -1
  346. package/dist/esm/Struct.js +12 -0
  347. package/dist/esm/Struct.js.map +1 -1
  348. package/dist/esm/Symbol.js +2 -0
  349. package/dist/esm/Symbol.js.map +1 -1
  350. package/dist/esm/Trie.js +56 -0
  351. package/dist/esm/Trie.js.map +1 -1
  352. package/dist/esm/Tuple.js +22 -0
  353. package/dist/esm/Tuple.js.map +1 -1
  354. package/dist/esm/Utils.js +5 -0
  355. package/dist/esm/Utils.js.map +1 -1
  356. package/dist/esm/internal/channel/channelExecutor.js +5 -7
  357. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  358. package/dist/esm/internal/channel.js +152 -129
  359. package/dist/esm/internal/channel.js.map +1 -1
  360. package/dist/esm/internal/config.js +11 -3
  361. package/dist/esm/internal/config.js.map +1 -1
  362. package/dist/esm/internal/context.js +42 -2
  363. package/dist/esm/internal/context.js.map +1 -1
  364. package/dist/esm/internal/dateTime.js +704 -0
  365. package/dist/esm/internal/dateTime.js.map +1 -0
  366. package/dist/esm/internal/fiberRuntime.js +31 -9
  367. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  368. package/dist/esm/internal/groupBy.js +9 -3
  369. package/dist/esm/internal/groupBy.js.map +1 -1
  370. package/dist/esm/internal/layer.js +1 -1
  371. package/dist/esm/internal/layer.js.map +1 -1
  372. package/dist/esm/internal/mailbox.js +1 -1
  373. package/dist/esm/internal/mailbox.js.map +1 -1
  374. package/dist/esm/internal/sink.js +23 -20
  375. package/dist/esm/internal/sink.js.map +1 -1
  376. package/dist/esm/internal/stream.js +66 -69
  377. package/dist/esm/internal/stream.js.map +1 -1
  378. package/dist/esm/internal/version.js +1 -1
  379. package/dist/esm/internal/version.js.map +1 -1
  380. package/package.json +1 -1
  381. package/src/Array.ts +534 -0
  382. package/src/BigDecimal.ts +247 -21
  383. package/src/BigInt.ts +114 -0
  384. package/src/Boolean.ts +56 -0
  385. package/src/Brand.ts +6 -0
  386. package/src/Channel.ts +81 -5
  387. package/src/Chunk.ts +32 -0
  388. package/src/Config.ts +26 -1
  389. package/src/Context.ts +163 -0
  390. package/src/Cron.ts +91 -68
  391. package/src/Data.ts +26 -0
  392. package/src/DateTime.ts +307 -757
  393. package/src/Duration.ts +2 -0
  394. package/src/Effect.ts +910 -1
  395. package/src/Either.ts +84 -2
  396. package/src/FiberHandle.ts +6 -0
  397. package/src/FiberMap.ts +6 -0
  398. package/src/FiberSet.ts +6 -0
  399. package/src/Function.ts +50 -0
  400. package/src/GlobalValue.ts +2 -0
  401. package/src/HashMap.ts +6 -0
  402. package/src/Inspectable.ts +11 -7
  403. package/src/Iterable.ts +26 -0
  404. package/src/JSONSchema.ts +1 -0
  405. package/src/List.ts +24 -0
  406. package/src/Logger.ts +34 -0
  407. package/src/Mailbox.ts +2 -0
  408. package/src/ManagedRuntime.ts +2 -0
  409. package/src/Metric.ts +18 -0
  410. package/src/Micro.ts +2007 -1745
  411. package/src/Number.ts +104 -0
  412. package/src/Option.ts +142 -0
  413. package/src/Order.ts +2 -0
  414. package/src/Ordering.ts +8 -0
  415. package/src/Predicate.ts +104 -0
  416. package/src/Random.ts +4 -0
  417. package/src/RateLimiter.ts +4 -0
  418. package/src/RcMap.ts +6 -0
  419. package/src/RcRef.ts +2 -0
  420. package/src/Record.ts +136 -0
  421. package/src/Redacted.ts +8 -0
  422. package/src/RegExp.ts +4 -0
  423. package/src/Request.ts +4 -0
  424. package/src/RequestResolver.ts +6 -0
  425. package/src/Runtime.ts +18 -0
  426. package/src/STM.ts +2 -0
  427. package/src/Schema.ts +124 -0
  428. package/src/Sink.ts +11 -0
  429. package/src/Stream.ts +399 -44
  430. package/src/String.ts +94 -0
  431. package/src/Struct.ts +24 -0
  432. package/src/Symbol.ts +2 -0
  433. package/src/Trie.ts +132 -0
  434. package/src/Tuple.ts +42 -0
  435. package/src/Types.ts +24 -0
  436. package/src/Utils.ts +8 -0
  437. package/src/internal/channel/channelExecutor.ts +37 -33
  438. package/src/internal/channel.ts +504 -467
  439. package/src/internal/config.ts +18 -6
  440. package/src/internal/context.ts +56 -4
  441. package/src/internal/dateTime.ts +1126 -0
  442. package/src/internal/fiberRuntime.ts +35 -16
  443. package/src/internal/groupBy.ts +13 -22
  444. package/src/internal/layer.ts +5 -8
  445. package/src/internal/mailbox.ts +6 -4
  446. package/src/internal/sink.ts +55 -35
  447. package/src/internal/stream.ts +299 -299
  448. package/src/internal/version.ts +1 -1
package/src/Number.ts CHANGED
@@ -19,10 +19,12 @@ import * as predicate from "./Predicate.js"
19
19
  * @param input - The value to test.
20
20
  *
21
21
  * @example
22
+ * ```ts
22
23
  * import { isNumber } from "effect/Number"
23
24
  *
24
25
  * assert.deepStrictEqual(isNumber(2), true)
25
26
  * assert.deepStrictEqual(isNumber("2"), false)
27
+ * ```
26
28
  *
27
29
  * @category guards
28
30
  * @since 2.0.0
@@ -36,9 +38,11 @@ export const isNumber: (input: unknown) => input is number = predicate.isNumber
36
38
  * @param that - The second operand.
37
39
  *
38
40
  * @example
41
+ * ```ts
39
42
  * import { sum } from "effect/Number"
40
43
  *
41
44
  * assert.deepStrictEqual(sum(2, 3), 5)
45
+ * ```
42
46
  *
43
47
  * @category math
44
48
  * @since 2.0.0
@@ -51,9 +55,11 @@ export const sum: {
51
55
  * @param that - The second operand.
52
56
  *
53
57
  * @example
58
+ * ```ts
54
59
  * import { sum } from "effect/Number"
55
60
  *
56
61
  * assert.deepStrictEqual(sum(2, 3), 5)
62
+ * ```
57
63
  *
58
64
  * @category math
59
65
  * @since 2.0.0
@@ -66,9 +72,11 @@ export const sum: {
66
72
  * @param that - The second operand.
67
73
  *
68
74
  * @example
75
+ * ```ts
69
76
  * import { sum } from "effect/Number"
70
77
  *
71
78
  * assert.deepStrictEqual(sum(2, 3), 5)
79
+ * ```
72
80
  *
73
81
  * @category math
74
82
  * @since 2.0.0
@@ -83,9 +91,11 @@ export const sum: {
83
91
  * @param that - The second operand.
84
92
  *
85
93
  * @example
94
+ * ```ts
86
95
  * import { multiply } from "effect/Number"
87
96
  *
88
97
  * assert.deepStrictEqual(multiply(2, 3), 6)
98
+ * ```
89
99
  *
90
100
  * @category math
91
101
  * @since 2.0.0
@@ -98,9 +108,11 @@ export const multiply: {
98
108
  * @param that - The second operand.
99
109
  *
100
110
  * @example
111
+ * ```ts
101
112
  * import { multiply } from "effect/Number"
102
113
  *
103
114
  * assert.deepStrictEqual(multiply(2, 3), 6)
115
+ * ```
104
116
  *
105
117
  * @category math
106
118
  * @since 2.0.0
@@ -113,9 +125,11 @@ export const multiply: {
113
125
  * @param that - The second operand.
114
126
  *
115
127
  * @example
128
+ * ```ts
116
129
  * import { multiply } from "effect/Number"
117
130
  *
118
131
  * assert.deepStrictEqual(multiply(2, 3), 6)
132
+ * ```
119
133
  *
120
134
  * @category math
121
135
  * @since 2.0.0
@@ -130,9 +144,11 @@ export const multiply: {
130
144
  * @param that - The second operand.
131
145
  *
132
146
  * @example
147
+ * ```ts
133
148
  * import { subtract } from "effect/Number"
134
149
  *
135
150
  * assert.deepStrictEqual(subtract(2, 3), -1)
151
+ * ```
136
152
  *
137
153
  * @category math
138
154
  * @since 2.0.0
@@ -145,9 +161,11 @@ export const subtract: {
145
161
  * @param that - The second operand.
146
162
  *
147
163
  * @example
164
+ * ```ts
148
165
  * import { subtract } from "effect/Number"
149
166
  *
150
167
  * assert.deepStrictEqual(subtract(2, 3), -1)
168
+ * ```
151
169
  *
152
170
  * @category math
153
171
  * @since 2.0.0
@@ -160,9 +178,11 @@ export const subtract: {
160
178
  * @param that - The second operand.
161
179
  *
162
180
  * @example
181
+ * ```ts
163
182
  * import { subtract } from "effect/Number"
164
183
  *
165
184
  * assert.deepStrictEqual(subtract(2, 3), -1)
185
+ * ```
166
186
  *
167
187
  * @category math
168
188
  * @since 2.0.0
@@ -177,10 +197,12 @@ export const subtract: {
177
197
  * @param that - The divisor operand.
178
198
  *
179
199
  * @example
200
+ * ```ts
180
201
  * import { Number, Option } from "effect"
181
202
  *
182
203
  * assert.deepStrictEqual(Number.divide(6, 3), Option.some(2))
183
204
  * assert.deepStrictEqual(Number.divide(6, 0), Option.none())
205
+ * ```
184
206
  *
185
207
  * @category math
186
208
  * @since 2.0.0
@@ -193,10 +215,12 @@ export const divide: {
193
215
  * @param that - The divisor operand.
194
216
  *
195
217
  * @example
218
+ * ```ts
196
219
  * import { Number, Option } from "effect"
197
220
  *
198
221
  * assert.deepStrictEqual(Number.divide(6, 3), Option.some(2))
199
222
  * assert.deepStrictEqual(Number.divide(6, 0), Option.none())
223
+ * ```
200
224
  *
201
225
  * @category math
202
226
  * @since 2.0.0
@@ -209,10 +233,12 @@ export const divide: {
209
233
  * @param that - The divisor operand.
210
234
  *
211
235
  * @example
236
+ * ```ts
212
237
  * import { Number, Option } from "effect"
213
238
  *
214
239
  * assert.deepStrictEqual(Number.divide(6, 3), Option.some(2))
215
240
  * assert.deepStrictEqual(Number.divide(6, 0), Option.none())
241
+ * ```
216
242
  *
217
243
  * @category math
218
244
  * @since 2.0.0
@@ -232,9 +258,11 @@ export const divide: {
232
258
  * @param that - The divisor operand.
233
259
  *
234
260
  * @example
261
+ * ```ts
235
262
  * import { unsafeDivide } from "effect/Number"
236
263
  *
237
264
  * assert.deepStrictEqual(unsafeDivide(6, 3), 2)
265
+ * ```
238
266
  *
239
267
  * @category math
240
268
  * @since 2.0.0
@@ -249,9 +277,11 @@ export const unsafeDivide: {
249
277
  * @param that - The divisor operand.
250
278
  *
251
279
  * @example
280
+ * ```ts
252
281
  * import { unsafeDivide } from "effect/Number"
253
282
  *
254
283
  * assert.deepStrictEqual(unsafeDivide(6, 3), 2)
284
+ * ```
255
285
  *
256
286
  * @category math
257
287
  * @since 2.0.0
@@ -266,9 +296,11 @@ export const unsafeDivide: {
266
296
  * @param that - The divisor operand.
267
297
  *
268
298
  * @example
299
+ * ```ts
269
300
  * import { unsafeDivide } from "effect/Number"
270
301
  *
271
302
  * assert.deepStrictEqual(unsafeDivide(6, 3), 2)
303
+ * ```
272
304
  *
273
305
  * @category math
274
306
  * @since 2.0.0
@@ -282,9 +314,11 @@ export const unsafeDivide: {
282
314
  * @param n - A `number` to be incremented.
283
315
  *
284
316
  * @example
317
+ * ```ts
285
318
  * import { increment } from "effect/Number"
286
319
  *
287
320
  * assert.deepStrictEqual(increment(2), 3)
321
+ * ```
288
322
  *
289
323
  * @category math
290
324
  * @since 2.0.0
@@ -297,9 +331,11 @@ export const increment = (n: number): number => n + 1
297
331
  * @param n - A `number` to be decremented.
298
332
  *
299
333
  * @example
334
+ * ```ts
300
335
  * import { decrement } from "effect/Number"
301
336
  *
302
337
  * assert.deepStrictEqual(decrement(3), 2)
338
+ * ```
303
339
  *
304
340
  * @category math
305
341
  * @since 2.0.0
@@ -325,11 +361,13 @@ export const Order: order.Order<number> = order.number
325
361
  * @param that - The second argument.
326
362
  *
327
363
  * @example
364
+ * ```ts
328
365
  * import { lessThan } from "effect/Number"
329
366
  *
330
367
  * assert.deepStrictEqual(lessThan(2, 3), true)
331
368
  * assert.deepStrictEqual(lessThan(3, 3), false)
332
369
  * assert.deepStrictEqual(lessThan(4, 3), false)
370
+ * ```
333
371
  *
334
372
  * @category predicates
335
373
  * @since 2.0.0
@@ -342,11 +380,13 @@ export const lessThan: {
342
380
  * @param that - The second argument.
343
381
  *
344
382
  * @example
383
+ * ```ts
345
384
  * import { lessThan } from "effect/Number"
346
385
  *
347
386
  * assert.deepStrictEqual(lessThan(2, 3), true)
348
387
  * assert.deepStrictEqual(lessThan(3, 3), false)
349
388
  * assert.deepStrictEqual(lessThan(4, 3), false)
389
+ * ```
350
390
  *
351
391
  * @category predicates
352
392
  * @since 2.0.0
@@ -359,11 +399,13 @@ export const lessThan: {
359
399
  * @param that - The second argument.
360
400
  *
361
401
  * @example
402
+ * ```ts
362
403
  * import { lessThan } from "effect/Number"
363
404
  *
364
405
  * assert.deepStrictEqual(lessThan(2, 3), true)
365
406
  * assert.deepStrictEqual(lessThan(3, 3), false)
366
407
  * assert.deepStrictEqual(lessThan(4, 3), false)
408
+ * ```
367
409
  *
368
410
  * @category predicates
369
411
  * @since 2.0.0
@@ -378,11 +420,13 @@ export const lessThan: {
378
420
  * @param that - The second `number` to compare with.
379
421
  *
380
422
  * @example
423
+ * ```ts
381
424
  * import { lessThanOrEqualTo } from "effect/Number"
382
425
  *
383
426
  * assert.deepStrictEqual(lessThanOrEqualTo(2, 3), true)
384
427
  * assert.deepStrictEqual(lessThanOrEqualTo(3, 3), true)
385
428
  * assert.deepStrictEqual(lessThanOrEqualTo(4, 3), false)
429
+ * ```
386
430
  *
387
431
  * @category predicates
388
432
  * @since 2.0.0
@@ -395,11 +439,13 @@ export const lessThanOrEqualTo: {
395
439
  * @param that - The second `number` to compare with.
396
440
  *
397
441
  * @example
442
+ * ```ts
398
443
  * import { lessThanOrEqualTo } from "effect/Number"
399
444
  *
400
445
  * assert.deepStrictEqual(lessThanOrEqualTo(2, 3), true)
401
446
  * assert.deepStrictEqual(lessThanOrEqualTo(3, 3), true)
402
447
  * assert.deepStrictEqual(lessThanOrEqualTo(4, 3), false)
448
+ * ```
403
449
  *
404
450
  * @category predicates
405
451
  * @since 2.0.0
@@ -412,11 +458,13 @@ export const lessThanOrEqualTo: {
412
458
  * @param that - The second `number` to compare with.
413
459
  *
414
460
  * @example
461
+ * ```ts
415
462
  * import { lessThanOrEqualTo } from "effect/Number"
416
463
  *
417
464
  * assert.deepStrictEqual(lessThanOrEqualTo(2, 3), true)
418
465
  * assert.deepStrictEqual(lessThanOrEqualTo(3, 3), true)
419
466
  * assert.deepStrictEqual(lessThanOrEqualTo(4, 3), false)
467
+ * ```
420
468
  *
421
469
  * @category predicates
422
470
  * @since 2.0.0
@@ -431,11 +479,13 @@ export const lessThanOrEqualTo: {
431
479
  * @param that - The second argument.
432
480
  *
433
481
  * @example
482
+ * ```ts
434
483
  * import { greaterThan } from "effect/Number"
435
484
  *
436
485
  * assert.deepStrictEqual(greaterThan(2, 3), false)
437
486
  * assert.deepStrictEqual(greaterThan(3, 3), false)
438
487
  * assert.deepStrictEqual(greaterThan(4, 3), true)
488
+ * ```
439
489
  *
440
490
  * @category predicates
441
491
  * @since 2.0.0
@@ -448,11 +498,13 @@ export const greaterThan: {
448
498
  * @param that - The second argument.
449
499
  *
450
500
  * @example
501
+ * ```ts
451
502
  * import { greaterThan } from "effect/Number"
452
503
  *
453
504
  * assert.deepStrictEqual(greaterThan(2, 3), false)
454
505
  * assert.deepStrictEqual(greaterThan(3, 3), false)
455
506
  * assert.deepStrictEqual(greaterThan(4, 3), true)
507
+ * ```
456
508
  *
457
509
  * @category predicates
458
510
  * @since 2.0.0
@@ -465,11 +517,13 @@ export const greaterThan: {
465
517
  * @param that - The second argument.
466
518
  *
467
519
  * @example
520
+ * ```ts
468
521
  * import { greaterThan } from "effect/Number"
469
522
  *
470
523
  * assert.deepStrictEqual(greaterThan(2, 3), false)
471
524
  * assert.deepStrictEqual(greaterThan(3, 3), false)
472
525
  * assert.deepStrictEqual(greaterThan(4, 3), true)
526
+ * ```
473
527
  *
474
528
  * @category predicates
475
529
  * @since 2.0.0
@@ -484,11 +538,13 @@ export const greaterThan: {
484
538
  * @param that - The second `number` to compare with.
485
539
  *
486
540
  * @example
541
+ * ```ts
487
542
  * import { greaterThanOrEqualTo } from "effect/Number"
488
543
  *
489
544
  * assert.deepStrictEqual(greaterThanOrEqualTo(2, 3), false)
490
545
  * assert.deepStrictEqual(greaterThanOrEqualTo(3, 3), true)
491
546
  * assert.deepStrictEqual(greaterThanOrEqualTo(4, 3), true)
547
+ * ```
492
548
  *
493
549
  * @category predicates
494
550
  * @since 2.0.0
@@ -501,11 +557,13 @@ export const greaterThanOrEqualTo: {
501
557
  * @param that - The second `number` to compare with.
502
558
  *
503
559
  * @example
560
+ * ```ts
504
561
  * import { greaterThanOrEqualTo } from "effect/Number"
505
562
  *
506
563
  * assert.deepStrictEqual(greaterThanOrEqualTo(2, 3), false)
507
564
  * assert.deepStrictEqual(greaterThanOrEqualTo(3, 3), true)
508
565
  * assert.deepStrictEqual(greaterThanOrEqualTo(4, 3), true)
566
+ * ```
509
567
  *
510
568
  * @category predicates
511
569
  * @since 2.0.0
@@ -518,11 +576,13 @@ export const greaterThanOrEqualTo: {
518
576
  * @param that - The second `number` to compare with.
519
577
  *
520
578
  * @example
579
+ * ```ts
521
580
  * import { greaterThanOrEqualTo } from "effect/Number"
522
581
  *
523
582
  * assert.deepStrictEqual(greaterThanOrEqualTo(2, 3), false)
524
583
  * assert.deepStrictEqual(greaterThanOrEqualTo(3, 3), true)
525
584
  * assert.deepStrictEqual(greaterThanOrEqualTo(4, 3), true)
585
+ * ```
526
586
  *
527
587
  * @category predicates
528
588
  * @since 2.0.0
@@ -538,6 +598,7 @@ export const greaterThanOrEqualTo: {
538
598
  * @param maximum - The `maximum` value to check.
539
599
  *
540
600
  * @example
601
+ * ```ts
541
602
  * import { Number } from "effect"
542
603
  *
543
604
  * const between = Number.between({ minimum: 0, maximum: 5 })
@@ -545,6 +606,7 @@ export const greaterThanOrEqualTo: {
545
606
  * assert.deepStrictEqual(between(3), true)
546
607
  * assert.deepStrictEqual(between(-1), false)
547
608
  * assert.deepStrictEqual(between(6), false)
609
+ * ```
548
610
  *
549
611
  * @category predicates
550
612
  * @since 2.0.0
@@ -558,6 +620,7 @@ export const between: {
558
620
  * @param maximum - The `maximum` value to check.
559
621
  *
560
622
  * @example
623
+ * ```ts
561
624
  * import { Number } from "effect"
562
625
  *
563
626
  * const between = Number.between({ minimum: 0, maximum: 5 })
@@ -565,6 +628,7 @@ export const between: {
565
628
  * assert.deepStrictEqual(between(3), true)
566
629
  * assert.deepStrictEqual(between(-1), false)
567
630
  * assert.deepStrictEqual(between(6), false)
631
+ * ```
568
632
  *
569
633
  * @category predicates
570
634
  * @since 2.0.0
@@ -583,6 +647,7 @@ export const between: {
583
647
  * @param maximum - The `maximum` value to check.
584
648
  *
585
649
  * @example
650
+ * ```ts
586
651
  * import { Number } from "effect"
587
652
  *
588
653
  * const between = Number.between({ minimum: 0, maximum: 5 })
@@ -590,6 +655,7 @@ export const between: {
590
655
  * assert.deepStrictEqual(between(3), true)
591
656
  * assert.deepStrictEqual(between(-1), false)
592
657
  * assert.deepStrictEqual(between(6), false)
658
+ * ```
593
659
  *
594
660
  * @category predicates
595
661
  * @since 2.0.0
@@ -615,6 +681,7 @@ export const between: {
615
681
  * @param maximum - The upper end of the range.
616
682
  *
617
683
  * @example
684
+ * ```ts
618
685
  * import { Number } from "effect"
619
686
  *
620
687
  * const clamp = Number.clamp({ minimum: 1, maximum: 5 })
@@ -622,6 +689,7 @@ export const between: {
622
689
  * assert.equal(clamp(3), 3)
623
690
  * assert.equal(clamp(0), 1)
624
691
  * assert.equal(clamp(6), 5)
692
+ * ```
625
693
  *
626
694
  * @since 2.0.0
627
695
  */
@@ -638,6 +706,7 @@ export const clamp: {
638
706
  * @param maximum - The upper end of the range.
639
707
  *
640
708
  * @example
709
+ * ```ts
641
710
  * import { Number } from "effect"
642
711
  *
643
712
  * const clamp = Number.clamp({ minimum: 1, maximum: 5 })
@@ -645,6 +714,7 @@ export const clamp: {
645
714
  * assert.equal(clamp(3), 3)
646
715
  * assert.equal(clamp(0), 1)
647
716
  * assert.equal(clamp(6), 5)
717
+ * ```
648
718
  *
649
719
  * @since 2.0.0
650
720
  */
@@ -666,6 +736,7 @@ export const clamp: {
666
736
  * @param maximum - The upper end of the range.
667
737
  *
668
738
  * @example
739
+ * ```ts
669
740
  * import { Number } from "effect"
670
741
  *
671
742
  * const clamp = Number.clamp({ minimum: 1, maximum: 5 })
@@ -673,6 +744,7 @@ export const clamp: {
673
744
  * assert.equal(clamp(3), 3)
674
745
  * assert.equal(clamp(0), 1)
675
746
  * assert.equal(clamp(6), 5)
747
+ * ```
676
748
  *
677
749
  * @since 2.0.0
678
750
  */
@@ -692,9 +764,11 @@ export const clamp: {
692
764
  * @param that - The second `number`.
693
765
  *
694
766
  * @example
767
+ * ```ts
695
768
  * import { min } from "effect/Number"
696
769
  *
697
770
  * assert.deepStrictEqual(min(2, 3), 2)
771
+ * ```
698
772
  *
699
773
  * @since 2.0.0
700
774
  */
@@ -706,9 +780,11 @@ export const min: {
706
780
  * @param that - The second `number`.
707
781
  *
708
782
  * @example
783
+ * ```ts
709
784
  * import { min } from "effect/Number"
710
785
  *
711
786
  * assert.deepStrictEqual(min(2, 3), 2)
787
+ * ```
712
788
  *
713
789
  * @since 2.0.0
714
790
  */
@@ -720,9 +796,11 @@ export const min: {
720
796
  * @param that - The second `number`.
721
797
  *
722
798
  * @example
799
+ * ```ts
723
800
  * import { min } from "effect/Number"
724
801
  *
725
802
  * assert.deepStrictEqual(min(2, 3), 2)
803
+ * ```
726
804
  *
727
805
  * @since 2.0.0
728
806
  */
@@ -736,9 +814,11 @@ export const min: {
736
814
  * @param that - The second `number`.
737
815
  *
738
816
  * @example
817
+ * ```ts
739
818
  * import { max } from "effect/Number"
740
819
  *
741
820
  * assert.deepStrictEqual(max(2, 3), 3)
821
+ * ```
742
822
  *
743
823
  * @since 2.0.0
744
824
  */
@@ -750,9 +830,11 @@ export const max: {
750
830
  * @param that - The second `number`.
751
831
  *
752
832
  * @example
833
+ * ```ts
753
834
  * import { max } from "effect/Number"
754
835
  *
755
836
  * assert.deepStrictEqual(max(2, 3), 3)
837
+ * ```
756
838
  *
757
839
  * @since 2.0.0
758
840
  */
@@ -764,9 +846,11 @@ export const max: {
764
846
  * @param that - The second `number`.
765
847
  *
766
848
  * @example
849
+ * ```ts
767
850
  * import { max } from "effect/Number"
768
851
  *
769
852
  * assert.deepStrictEqual(max(2, 3), 3)
853
+ * ```
770
854
  *
771
855
  * @since 2.0.0
772
856
  */
@@ -779,11 +863,13 @@ export const max: {
779
863
  * @param n - The `number` to determine the sign of.
780
864
  *
781
865
  * @example
866
+ * ```ts
782
867
  * import { sign } from "effect/Number"
783
868
  *
784
869
  * assert.deepStrictEqual(sign(-5), -1)
785
870
  * assert.deepStrictEqual(sign(0), 0)
786
871
  * assert.deepStrictEqual(sign(5), 1)
872
+ * ```
787
873
  *
788
874
  * @category math
789
875
  * @since 2.0.0
@@ -796,9 +882,11 @@ export const sign = (n: number): Ordering => Order(n, 0)
796
882
  * @param collection - The collection of `number`s to sum.
797
883
  *
798
884
  * @example
885
+ * ```ts
799
886
  * import { sumAll } from "effect/Number"
800
887
  *
801
888
  * assert.deepStrictEqual(sumAll([2, 3, 4]), 9)
889
+ * ```
802
890
  *
803
891
  * @category math
804
892
  * @since 2.0.0
@@ -817,9 +905,11 @@ export const sumAll = (collection: Iterable<number>): number => {
817
905
  * @param collection - The collection of `number`s to multiply.
818
906
  *
819
907
  * @example
908
+ * ```ts
820
909
  * import { multiplyAll } from "effect/Number"
821
910
  *
822
911
  * assert.deepStrictEqual(multiplyAll([2, 3, 4]), 24)
912
+ * ```
823
913
  *
824
914
  * @category math
825
915
  * @since 2.0.0
@@ -844,11 +934,13 @@ export const multiplyAll = (collection: Iterable<number>): number => {
844
934
  * @param divisor - The divisor.
845
935
  *
846
936
  * @example
937
+ * ```ts
847
938
  * import { remainder } from "effect/Number"
848
939
  *
849
940
  * assert.deepStrictEqual(remainder(2, 2), 0)
850
941
  * assert.deepStrictEqual(remainder(3, 2), 1)
851
942
  * assert.deepStrictEqual(remainder(-4, 2), -0)
943
+ * ```
852
944
  *
853
945
  * @category math
854
946
  * @since 2.0.0
@@ -863,11 +955,13 @@ export const remainder: {
863
955
  * @param divisor - The divisor.
864
956
  *
865
957
  * @example
958
+ * ```ts
866
959
  * import { remainder } from "effect/Number"
867
960
  *
868
961
  * assert.deepStrictEqual(remainder(2, 2), 0)
869
962
  * assert.deepStrictEqual(remainder(3, 2), 1)
870
963
  * assert.deepStrictEqual(remainder(-4, 2), -0)
964
+ * ```
871
965
  *
872
966
  * @category math
873
967
  * @since 2.0.0
@@ -882,11 +976,13 @@ export const remainder: {
882
976
  * @param divisor - The divisor.
883
977
  *
884
978
  * @example
979
+ * ```ts
885
980
  * import { remainder } from "effect/Number"
886
981
  *
887
982
  * assert.deepStrictEqual(remainder(2, 2), 0)
888
983
  * assert.deepStrictEqual(remainder(3, 2), 1)
889
984
  * assert.deepStrictEqual(remainder(-4, 2), -0)
985
+ * ```
890
986
  *
891
987
  * @category math
892
988
  * @since 2.0.0
@@ -908,10 +1004,12 @@ export const remainder: {
908
1004
  * @param self - The number to find the next power of 2 from.
909
1005
  *
910
1006
  * @example
1007
+ * ```ts
911
1008
  * import { nextPow2 } from "effect/Number"
912
1009
  *
913
1010
  * assert.deepStrictEqual(nextPow2(5), 8)
914
1011
  * assert.deepStrictEqual(nextPow2(17), 32)
1012
+ * ```
915
1013
  *
916
1014
  * @category math
917
1015
  * @since 2.0.0
@@ -954,10 +1052,12 @@ export const parse = (s: string): Option<number> => {
954
1052
  * @param precision - The precision
955
1053
  *
956
1054
  * @example
1055
+ * ```ts
957
1056
  * import { round } from "effect/Number"
958
1057
  *
959
1058
  * assert.deepStrictEqual(round(1.1234, 2), 1.12)
960
1059
  * assert.deepStrictEqual(round(1.567, 2), 1.57)
1060
+ * ```
961
1061
  *
962
1062
  * @category math
963
1063
  * @since 3.8.0
@@ -970,10 +1070,12 @@ export const round: {
970
1070
  * @param precision - The precision
971
1071
  *
972
1072
  * @example
1073
+ * ```ts
973
1074
  * import { round } from "effect/Number"
974
1075
  *
975
1076
  * assert.deepStrictEqual(round(1.1234, 2), 1.12)
976
1077
  * assert.deepStrictEqual(round(1.567, 2), 1.57)
1078
+ * ```
977
1079
  *
978
1080
  * @category math
979
1081
  * @since 3.8.0
@@ -986,10 +1088,12 @@ export const round: {
986
1088
  * @param precision - The precision
987
1089
  *
988
1090
  * @example
1091
+ * ```ts
989
1092
  * import { round } from "effect/Number"
990
1093
  *
991
1094
  * assert.deepStrictEqual(round(1.1234, 2), 1.12)
992
1095
  * assert.deepStrictEqual(round(1.567, 2), 1.57)
1096
+ * ```
993
1097
  *
994
1098
  * @category math
995
1099
  * @since 3.8.0