@fncts/test 0.0.20 → 0.0.22

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 (459) hide show
  1. package/_cjs/api.cjs +39 -76
  2. package/_cjs/api.cjs.map +1 -1
  3. package/_cjs/control/AbstractRunnableSpec.cjs +1 -12
  4. package/_cjs/control/AbstractRunnableSpec.cjs.map +1 -1
  5. package/_cjs/control/Annotations/api.cjs +0 -12
  6. package/_cjs/control/Annotations/api.cjs.map +1 -1
  7. package/_cjs/control/Annotations/definition.cjs +0 -6
  8. package/_cjs/control/Annotations/definition.cjs.map +1 -1
  9. package/_cjs/control/Annotations/live.cjs +6 -29
  10. package/_cjs/control/Annotations/live.cjs.map +1 -1
  11. package/_cjs/control/Annotations.cjs +0 -6
  12. package/_cjs/control/Annotations.cjs.map +1 -1
  13. package/_cjs/control/Assertion/api.cjs +50 -100
  14. package/_cjs/control/Assertion/api.cjs.map +1 -1
  15. package/_cjs/control/Assertion/definition.cjs +0 -8
  16. package/_cjs/control/Assertion/definition.cjs.map +1 -1
  17. package/_cjs/control/Assertion.cjs +0 -4
  18. package/_cjs/control/Assertion.cjs.map +1 -1
  19. package/_cjs/control/AssertionIO/api.cjs +20 -26
  20. package/_cjs/control/AssertionIO/api.cjs.map +1 -1
  21. package/_cjs/control/AssertionIO/definition.cjs +0 -8
  22. package/_cjs/control/AssertionIO/definition.cjs.map +1 -1
  23. package/_cjs/control/AssertionIO.cjs +0 -4
  24. package/_cjs/control/AssertionIO.cjs.map +1 -1
  25. package/_cjs/control/DefaultRunnableSpec.cjs +0 -12
  26. package/_cjs/control/DefaultRunnableSpec.cjs.map +1 -1
  27. package/_cjs/control/DefaultTestReporter/definition.cjs.map +1 -1
  28. package/_cjs/control/DefaultTestReporter/render.cjs +54 -123
  29. package/_cjs/control/DefaultTestReporter/render.cjs.map +1 -1
  30. package/_cjs/control/DefaultTestReporter.cjs +0 -4
  31. package/_cjs/control/DefaultTestReporter.cjs.map +1 -1
  32. package/_cjs/control/FreeBooleanAlgebraIO/api.cjs +20 -36
  33. package/_cjs/control/FreeBooleanAlgebraIO/api.cjs.map +1 -1
  34. package/_cjs/control/FreeBooleanAlgebraIO/definition.cjs.map +1 -1
  35. package/_cjs/control/FreeBooleanAlgebraIO.cjs +0 -4
  36. package/_cjs/control/FreeBooleanAlgebraIO.cjs.map +1 -1
  37. package/_cjs/control/Gen/api.cjs +533 -200
  38. package/_cjs/control/Gen/api.cjs.map +1 -1
  39. package/_cjs/control/Gen/definition.cjs +0 -3
  40. package/_cjs/control/Gen/definition.cjs.map +1 -1
  41. package/_cjs/control/Gen.cjs +0 -97
  42. package/_cjs/control/Gen.cjs.map +1 -1
  43. package/_cjs/control/Live/definition.cjs +5 -23
  44. package/_cjs/control/Live/definition.cjs.map +1 -1
  45. package/_cjs/control/Live.cjs +0 -2
  46. package/_cjs/control/Live.cjs.map +1 -1
  47. package/_cjs/control/RunnableSpec.cjs +8 -28
  48. package/_cjs/control/RunnableSpec.cjs.map +1 -1
  49. package/_cjs/control/Sample/api.cjs +66 -107
  50. package/_cjs/control/Sample/api.cjs.map +1 -1
  51. package/_cjs/control/Sample/definition.cjs +0 -3
  52. package/_cjs/control/Sample/definition.cjs.map +1 -1
  53. package/_cjs/control/Sample.cjs +0 -4
  54. package/_cjs/control/Sample.cjs.map +1 -1
  55. package/_cjs/control/Sized/api.cjs +0 -8
  56. package/_cjs/control/Sized/api.cjs.map +1 -1
  57. package/_cjs/control/Sized/definition.cjs +0 -6
  58. package/_cjs/control/Sized/definition.cjs.map +1 -1
  59. package/_cjs/control/Sized/live.cjs +3 -15
  60. package/_cjs/control/Sized/live.cjs.map +1 -1
  61. package/_cjs/control/Sized.cjs +0 -6
  62. package/_cjs/control/Sized.cjs.map +1 -1
  63. package/_cjs/control/Spec/api.cjs +322 -367
  64. package/_cjs/control/Spec/api.cjs.map +1 -1
  65. package/_cjs/control/Spec/definition.cjs +6 -45
  66. package/_cjs/control/Spec/definition.cjs.map +1 -1
  67. package/_cjs/control/Spec.cjs +0 -4
  68. package/_cjs/control/Spec.cjs.map +1 -1
  69. package/_cjs/control/SummaryBuilder.cjs +10 -31
  70. package/_cjs/control/SummaryBuilder.cjs.map +1 -1
  71. package/_cjs/control/Test.cjs +1 -11
  72. package/_cjs/control/Test.cjs.map +1 -1
  73. package/_cjs/control/TestAnnotationRenderer/api.cjs +20 -45
  74. package/_cjs/control/TestAnnotationRenderer/api.cjs.map +1 -1
  75. package/_cjs/control/TestAnnotationRenderer/definition.cjs +4 -20
  76. package/_cjs/control/TestAnnotationRenderer/definition.cjs.map +1 -1
  77. package/_cjs/control/TestAnnotationRenderer.cjs +0 -4
  78. package/_cjs/control/TestAnnotationRenderer.cjs.map +1 -1
  79. package/_cjs/control/TestAspect/api.cjs +14 -55
  80. package/_cjs/control/TestAspect/api.cjs.map +1 -1
  81. package/_cjs/control/TestAspect.cjs +0 -4
  82. package/_cjs/control/TestAspect.cjs.map +1 -1
  83. package/_cjs/control/TestClock/api.cjs +1 -22
  84. package/_cjs/control/TestClock/api.cjs.map +1 -1
  85. package/_cjs/control/TestClock/definition.cjs +50 -110
  86. package/_cjs/control/TestClock/definition.cjs.map +1 -1
  87. package/_cjs/control/TestClock.cjs +0 -4
  88. package/_cjs/control/TestClock.cjs.map +1 -1
  89. package/_cjs/control/TestConsole/api.cjs +3 -21
  90. package/_cjs/control/TestConsole/api.cjs.map +1 -1
  91. package/_cjs/control/TestConsole/definition.cjs +23 -48
  92. package/_cjs/control/TestConsole/definition.cjs.map +1 -1
  93. package/_cjs/control/TestConsole.cjs +0 -4
  94. package/_cjs/control/TestConsole.cjs.map +1 -1
  95. package/_cjs/control/TestEnvironment.cjs +3 -15
  96. package/_cjs/control/TestEnvironment.cjs.map +1 -1
  97. package/_cjs/control/TestExecutor.cjs +3 -17
  98. package/_cjs/control/TestExecutor.cjs.map +1 -1
  99. package/_cjs/control/TestLogger.cjs +2 -17
  100. package/_cjs/control/TestLogger.cjs.map +1 -1
  101. package/_cjs/control/TestRandom/api.cjs +9 -39
  102. package/_cjs/control/TestRandom/api.cjs.map +1 -1
  103. package/_cjs/control/TestRandom/definition.cjs +61 -145
  104. package/_cjs/control/TestRandom/definition.cjs.map +1 -1
  105. package/_cjs/control/TestRandom.cjs +0 -4
  106. package/_cjs/control/TestRandom.cjs.map +1 -1
  107. package/_cjs/control/TestRenderer/ConsoleRenderer.cjs +11 -36
  108. package/_cjs/control/TestRenderer/ConsoleRenderer.cjs.map +1 -1
  109. package/_cjs/control/TestRunner.cjs +2 -19
  110. package/_cjs/control/TestRunner.cjs.map +1 -1
  111. package/_cjs/data/AssertionData.cjs +0 -14
  112. package/_cjs/data/AssertionData.cjs.map +1 -1
  113. package/_cjs/data/AssertionResult.cjs +0 -8
  114. package/_cjs/data/AssertionResult.cjs.map +1 -1
  115. package/_cjs/data/AssertionValue/api.cjs +23 -30
  116. package/_cjs/data/AssertionValue/api.cjs.map +1 -1
  117. package/_cjs/data/AssertionValue/definition.cjs +0 -8
  118. package/_cjs/data/AssertionValue/definition.cjs.map +1 -1
  119. package/_cjs/data/AssertionValue.cjs +0 -4
  120. package/_cjs/data/AssertionValue.cjs.map +1 -1
  121. package/_cjs/data/ExecutedSpec/api.cjs +61 -75
  122. package/_cjs/data/ExecutedSpec/api.cjs.map +1 -1
  123. package/_cjs/data/ExecutedSpec/definition.cjs +3 -21
  124. package/_cjs/data/ExecutedSpec/definition.cjs.map +1 -1
  125. package/_cjs/data/ExecutedSpec.cjs +0 -4
  126. package/_cjs/data/ExecutedSpec.cjs.map +1 -1
  127. package/_cjs/data/ExecutionResult.cjs +42 -67
  128. package/_cjs/data/ExecutionResult.cjs.map +1 -1
  129. package/_cjs/data/FailureDetails.cjs +0 -3
  130. package/_cjs/data/FailureDetails.cjs.map +1 -1
  131. package/_cjs/data/FreeBooleanAlgebra/api.cjs +82 -115
  132. package/_cjs/data/FreeBooleanAlgebra/api.cjs.map +1 -1
  133. package/_cjs/data/FreeBooleanAlgebra/definition.cjs +4 -24
  134. package/_cjs/data/FreeBooleanAlgebra/definition.cjs.map +1 -1
  135. package/_cjs/data/FreeBooleanAlgebra.cjs +0 -4
  136. package/_cjs/data/FreeBooleanAlgebra.cjs.map +1 -1
  137. package/_cjs/data/GenFailureDetails.cjs +0 -3
  138. package/_cjs/data/GenFailureDetails.cjs.map +1 -1
  139. package/_cjs/data/LogLine/Fragment.cjs +2 -24
  140. package/_cjs/data/LogLine/Fragment.cjs.map +1 -1
  141. package/_cjs/data/LogLine/Line.cjs +11 -41
  142. package/_cjs/data/LogLine/Line.cjs.map +1 -1
  143. package/_cjs/data/LogLine/Message.cjs +32 -58
  144. package/_cjs/data/LogLine/Message.cjs.map +1 -1
  145. package/_cjs/data/LogLine/Style.cjs +10 -44
  146. package/_cjs/data/LogLine/Style.cjs.map +1 -1
  147. package/_cjs/data/LogLine/api.cjs +0 -15
  148. package/_cjs/data/LogLine/api.cjs.map +1 -1
  149. package/_cjs/data/LogLine.cjs +0 -4
  150. package/_cjs/data/LogLine.cjs.map +1 -1
  151. package/_cjs/data/Render/api.cjs +0 -4
  152. package/_cjs/data/Render/api.cjs.map +1 -1
  153. package/_cjs/data/Render/definition.cjs +3 -17
  154. package/_cjs/data/Render/definition.cjs.map +1 -1
  155. package/_cjs/data/Render.cjs +0 -4
  156. package/_cjs/data/Render.cjs.map +1 -1
  157. package/_cjs/data/RenderParam/api.cjs +3 -15
  158. package/_cjs/data/RenderParam/api.cjs.map +1 -1
  159. package/_cjs/data/RenderParam/definition.cjs +2 -12
  160. package/_cjs/data/RenderParam/definition.cjs.map +1 -1
  161. package/_cjs/data/RenderParam.cjs +0 -4
  162. package/_cjs/data/RenderParam.cjs.map +1 -1
  163. package/_cjs/data/Summary.cjs +0 -3
  164. package/_cjs/data/Summary.cjs.map +1 -1
  165. package/_cjs/data/TestAnnotation/api.cjs +2 -17
  166. package/_cjs/data/TestAnnotation/api.cjs.map +1 -1
  167. package/_cjs/data/TestAnnotation/definition.cjs +4 -19
  168. package/_cjs/data/TestAnnotation/definition.cjs.map +1 -1
  169. package/_cjs/data/TestAnnotation.cjs +0 -4
  170. package/_cjs/data/TestAnnotation.cjs.map +1 -1
  171. package/_cjs/data/TestAnnotationMap.cjs +4 -19
  172. package/_cjs/data/TestAnnotationMap.cjs.map +1 -1
  173. package/_cjs/data/TestArgs/definition.cjs +0 -3
  174. package/_cjs/data/TestArgs/definition.cjs.map +1 -1
  175. package/_cjs/data/TestArgs.cjs +0 -2
  176. package/_cjs/data/TestArgs.cjs.map +1 -1
  177. package/_cjs/data/TestConfig.cjs +0 -17
  178. package/_cjs/data/TestConfig.cjs.map +1 -1
  179. package/_cjs/data/TestFailure.cjs +2 -23
  180. package/_cjs/data/TestFailure.cjs.map +1 -1
  181. package/_cjs/data/TestSuccess.cjs +2 -16
  182. package/_cjs/data/TestSuccess.cjs.map +1 -1
  183. package/_cjs/data/TestTimeoutException.cjs +0 -3
  184. package/_cjs/data/TestTimeoutException.cjs.map +1 -1
  185. package/_cjs/demo.cjs +5 -15
  186. package/_cjs/demo.cjs.map +1 -1
  187. package/_cjs/util/math.cjs +20 -148
  188. package/_cjs/util/math.cjs.map +1 -1
  189. package/_mjs/api.mjs +37 -40
  190. package/_mjs/api.mjs.map +1 -1
  191. package/_mjs/control/AbstractRunnableSpec.mjs +1 -7
  192. package/_mjs/control/AbstractRunnableSpec.mjs.map +1 -1
  193. package/_mjs/control/Annotations/api.mjs +0 -4
  194. package/_mjs/control/Annotations/api.mjs.map +1 -1
  195. package/_mjs/control/Annotations/definition.mjs +0 -2
  196. package/_mjs/control/Annotations/definition.mjs.map +1 -1
  197. package/_mjs/control/Annotations/live.mjs +6 -11
  198. package/_mjs/control/Annotations/live.mjs.map +1 -1
  199. package/_mjs/control/Annotations.mjs.map +1 -1
  200. package/_mjs/control/Assertion/api.mjs +43 -46
  201. package/_mjs/control/Assertion/api.mjs.map +1 -1
  202. package/_mjs/control/Assertion/definition.mjs +0 -2
  203. package/_mjs/control/Assertion/definition.mjs.map +1 -1
  204. package/_mjs/control/Assertion.mjs.map +1 -1
  205. package/_mjs/control/AssertionIO/api.mjs +17 -14
  206. package/_mjs/control/AssertionIO/api.mjs.map +1 -1
  207. package/_mjs/control/AssertionIO/definition.mjs +0 -3
  208. package/_mjs/control/AssertionIO/definition.mjs.map +1 -1
  209. package/_mjs/control/AssertionIO.mjs.map +1 -1
  210. package/_mjs/control/DefaultRunnableSpec.mjs +0 -1
  211. package/_mjs/control/DefaultRunnableSpec.mjs.map +1 -1
  212. package/_mjs/control/DefaultTestReporter/definition.mjs.map +1 -1
  213. package/_mjs/control/DefaultTestReporter/render.mjs +54 -87
  214. package/_mjs/control/DefaultTestReporter/render.mjs.map +1 -1
  215. package/_mjs/control/DefaultTestReporter.mjs.map +1 -1
  216. package/_mjs/control/FreeBooleanAlgebraIO/api.mjs +18 -22
  217. package/_mjs/control/FreeBooleanAlgebraIO/api.mjs.map +1 -1
  218. package/_mjs/control/FreeBooleanAlgebraIO/definition.mjs.map +1 -1
  219. package/_mjs/control/FreeBooleanAlgebraIO.mjs.map +1 -1
  220. package/_mjs/control/Gen/api.mjs +462 -138
  221. package/_mjs/control/Gen/api.mjs.map +1 -1
  222. package/_mjs/control/Gen/definition.mjs +0 -1
  223. package/_mjs/control/Gen/definition.mjs.map +1 -1
  224. package/_mjs/control/Gen.mjs +1 -10
  225. package/_mjs/control/Gen.mjs.map +1 -1
  226. package/_mjs/control/Live/definition.mjs +5 -10
  227. package/_mjs/control/Live/definition.mjs.map +1 -1
  228. package/_mjs/control/Live.mjs.map +1 -1
  229. package/_mjs/control/RunnableSpec.mjs +8 -11
  230. package/_mjs/control/RunnableSpec.mjs.map +1 -1
  231. package/_mjs/control/Sample/api.mjs +57 -73
  232. package/_mjs/control/Sample/api.mjs.map +1 -1
  233. package/_mjs/control/Sample/definition.mjs +0 -1
  234. package/_mjs/control/Sample/definition.mjs.map +1 -1
  235. package/_mjs/control/Sample.mjs.map +1 -1
  236. package/_mjs/control/Sized/api.mjs +0 -2
  237. package/_mjs/control/Sized/api.mjs.map +1 -1
  238. package/_mjs/control/Sized/definition.mjs +0 -2
  239. package/_mjs/control/Sized/definition.mjs.map +1 -1
  240. package/_mjs/control/Sized/live.mjs +3 -6
  241. package/_mjs/control/Sized/live.mjs.map +1 -1
  242. package/_mjs/control/Sized.mjs.map +1 -1
  243. package/_mjs/control/Spec/api.mjs +300 -309
  244. package/_mjs/control/Spec/api.mjs.map +1 -1
  245. package/_mjs/control/Spec/definition.mjs +6 -31
  246. package/_mjs/control/Spec/definition.mjs.map +1 -1
  247. package/_mjs/control/Spec.mjs.map +1 -1
  248. package/_mjs/control/SummaryBuilder.mjs +10 -15
  249. package/_mjs/control/SummaryBuilder.mjs.map +1 -1
  250. package/_mjs/control/Test.mjs +1 -2
  251. package/_mjs/control/Test.mjs.map +1 -1
  252. package/_mjs/control/TestAnnotationRenderer/api.mjs +20 -34
  253. package/_mjs/control/TestAnnotationRenderer/api.mjs.map +1 -1
  254. package/_mjs/control/TestAnnotationRenderer/definition.mjs +4 -10
  255. package/_mjs/control/TestAnnotationRenderer/definition.mjs.map +1 -1
  256. package/_mjs/control/TestAnnotationRenderer.mjs.map +1 -1
  257. package/_mjs/control/TestAspect/api.mjs +14 -18
  258. package/_mjs/control/TestAspect/api.mjs.map +1 -1
  259. package/_mjs/control/TestAspect.mjs.map +1 -1
  260. package/_mjs/control/TestClock/api.mjs +1 -5
  261. package/_mjs/control/TestClock/api.mjs.map +1 -1
  262. package/_mjs/control/TestClock/definition.mjs +50 -72
  263. package/_mjs/control/TestClock/definition.mjs.map +1 -1
  264. package/_mjs/control/TestClock.mjs.map +1 -1
  265. package/_mjs/control/TestConsole/api.mjs +3 -6
  266. package/_mjs/control/TestConsole/api.mjs.map +1 -1
  267. package/_mjs/control/TestConsole/definition.mjs +23 -32
  268. package/_mjs/control/TestConsole/definition.mjs.map +1 -1
  269. package/_mjs/control/TestConsole.mjs.map +1 -1
  270. package/_mjs/control/TestEnvironment.mjs +3 -3
  271. package/_mjs/control/TestEnvironment.mjs.map +1 -1
  272. package/_mjs/control/TestExecutor.mjs +3 -3
  273. package/_mjs/control/TestExecutor.mjs.map +1 -1
  274. package/_mjs/control/TestLogger.mjs +2 -7
  275. package/_mjs/control/TestLogger.mjs.map +1 -1
  276. package/_mjs/control/TestRandom/api.mjs +9 -19
  277. package/_mjs/control/TestRandom/api.mjs.map +1 -1
  278. package/_mjs/control/TestRandom/definition.mjs +61 -121
  279. package/_mjs/control/TestRandom/definition.mjs.map +1 -1
  280. package/_mjs/control/TestRandom.mjs.map +1 -1
  281. package/_mjs/control/TestRenderer/ConsoleRenderer.mjs +11 -21
  282. package/_mjs/control/TestRenderer/ConsoleRenderer.mjs.map +1 -1
  283. package/_mjs/control/TestRunner.mjs +2 -6
  284. package/_mjs/control/TestRunner.mjs.map +1 -1
  285. package/_mjs/data/AssertionData.mjs +0 -5
  286. package/_mjs/data/AssertionData.mjs.map +1 -1
  287. package/_mjs/data/AssertionResult.mjs +0 -2
  288. package/_mjs/data/AssertionResult.mjs.map +1 -1
  289. package/_mjs/data/AssertionValue/api.mjs +23 -20
  290. package/_mjs/data/AssertionValue/api.mjs.map +1 -1
  291. package/_mjs/data/AssertionValue/definition.mjs +0 -2
  292. package/_mjs/data/AssertionValue/definition.mjs.map +1 -1
  293. package/_mjs/data/AssertionValue.mjs.map +1 -1
  294. package/_mjs/data/ExecutedSpec/api.mjs +55 -57
  295. package/_mjs/data/ExecutedSpec/api.mjs.map +1 -1
  296. package/_mjs/data/ExecutedSpec/definition.mjs +5 -13
  297. package/_mjs/data/ExecutedSpec/definition.mjs.map +1 -1
  298. package/_mjs/data/ExecutedSpec.mjs.map +1 -1
  299. package/_mjs/data/ExecutionResult.mjs +40 -52
  300. package/_mjs/data/ExecutionResult.mjs.map +1 -1
  301. package/_mjs/data/FailureDetails.mjs +0 -1
  302. package/_mjs/data/FailureDetails.mjs.map +1 -1
  303. package/_mjs/data/FreeBooleanAlgebra/api.mjs +70 -87
  304. package/_mjs/data/FreeBooleanAlgebra/api.mjs.map +1 -1
  305. package/_mjs/data/FreeBooleanAlgebra/definition.mjs +8 -16
  306. package/_mjs/data/FreeBooleanAlgebra/definition.mjs.map +1 -1
  307. package/_mjs/data/FreeBooleanAlgebra.mjs.map +1 -1
  308. package/_mjs/data/GenFailureDetails.mjs +0 -1
  309. package/_mjs/data/GenFailureDetails.mjs.map +1 -1
  310. package/_mjs/data/LogLine/Fragment.mjs +2 -11
  311. package/_mjs/data/LogLine/Fragment.mjs.map +1 -1
  312. package/_mjs/data/LogLine/Line.mjs +11 -24
  313. package/_mjs/data/LogLine/Line.mjs.map +1 -1
  314. package/_mjs/data/LogLine/Message.mjs +26 -36
  315. package/_mjs/data/LogLine/Message.mjs.map +1 -1
  316. package/_mjs/data/LogLine/Style.mjs +10 -39
  317. package/_mjs/data/LogLine/Style.mjs.map +1 -1
  318. package/_mjs/data/LogLine/api.mjs.map +1 -1
  319. package/_mjs/data/LogLine.mjs.map +1 -1
  320. package/_mjs/data/Render/api.mjs +0 -2
  321. package/_mjs/data/Render/api.mjs.map +1 -1
  322. package/_mjs/data/Render/definition.mjs +3 -9
  323. package/_mjs/data/Render/definition.mjs.map +1 -1
  324. package/_mjs/data/Render.mjs.map +1 -1
  325. package/_mjs/data/RenderParam/api.mjs +3 -10
  326. package/_mjs/data/RenderParam/api.mjs.map +1 -1
  327. package/_mjs/data/RenderParam/definition.mjs +4 -8
  328. package/_mjs/data/RenderParam/definition.mjs.map +1 -1
  329. package/_mjs/data/RenderParam.mjs.map +1 -1
  330. package/_mjs/data/Summary.mjs +0 -1
  331. package/_mjs/data/Summary.mjs.map +1 -1
  332. package/_mjs/data/TestAnnotation/api.mjs +2 -8
  333. package/_mjs/data/TestAnnotation/api.mjs.map +1 -1
  334. package/_mjs/data/TestAnnotation/definition.mjs +4 -8
  335. package/_mjs/data/TestAnnotation/definition.mjs.map +1 -1
  336. package/_mjs/data/TestAnnotation.mjs.map +1 -1
  337. package/_mjs/data/TestAnnotationMap.mjs +4 -10
  338. package/_mjs/data/TestAnnotationMap.mjs.map +1 -1
  339. package/_mjs/data/TestArgs/definition.mjs +0 -1
  340. package/_mjs/data/TestArgs/definition.mjs.map +1 -1
  341. package/_mjs/data/TestArgs.mjs.map +1 -1
  342. package/_mjs/data/TestConfig.mjs +0 -8
  343. package/_mjs/data/TestConfig.mjs.map +1 -1
  344. package/_mjs/data/TestFailure.mjs +4 -12
  345. package/_mjs/data/TestFailure.mjs.map +1 -1
  346. package/_mjs/data/TestSuccess.mjs +4 -10
  347. package/_mjs/data/TestSuccess.mjs.map +1 -1
  348. package/_mjs/data/TestTimeoutException.mjs +0 -1
  349. package/_mjs/data/TestTimeoutException.mjs.map +1 -1
  350. package/_mjs/demo.mjs +5 -8
  351. package/_mjs/demo.mjs.map +1 -1
  352. package/_mjs/util/math.mjs +20 -117
  353. package/_mjs/util/math.mjs.map +1 -1
  354. package/_src/api.ts +36 -35
  355. package/_src/control/AbstractRunnableSpec.ts +0 -6
  356. package/_src/control/Annotations/live.ts +4 -10
  357. package/_src/control/Assertion/api.ts +36 -25
  358. package/_src/control/AssertionIO/api.ts +23 -17
  359. package/_src/control/DefaultTestReporter/render.ts +2 -12
  360. package/_src/control/FreeBooleanAlgebraIO/api.ts +12 -14
  361. package/_src/control/Gen/api.ts +476 -71
  362. package/_src/control/Gen.ts +0 -10
  363. package/_src/control/Live/definition.ts +0 -4
  364. package/_src/control/RunnableSpec.ts +1 -1
  365. package/_src/control/Sample/api.ts +78 -67
  366. package/_src/control/Spec/api.ts +235 -222
  367. package/_src/control/Spec/definition.ts +0 -2
  368. package/_src/control/SummaryBuilder.ts +0 -1
  369. package/_src/control/TestAnnotationRenderer/api.ts +17 -15
  370. package/_src/control/TestAnnotationRenderer/definition.ts +0 -2
  371. package/_src/control/TestAspect/api.ts +2 -3
  372. package/_src/control/TestClock/definition.ts +13 -25
  373. package/_src/control/TestConsole/definition.ts +1 -2
  374. package/_src/control/TestLogger.ts +0 -2
  375. package/_src/control/TestRandom/api.ts +5 -0
  376. package/_src/control/TestRandom/definition.ts +3 -37
  377. package/_src/control/TestRenderer/ConsoleRenderer.ts +0 -1
  378. package/_src/control/TestRunner.ts +0 -3
  379. package/_src/data/AssertionValue/api.ts +27 -23
  380. package/_src/data/AssertionValue/definition.ts +0 -1
  381. package/_src/data/ExecutedSpec/api.ts +41 -36
  382. package/_src/data/ExecutionResult.ts +54 -51
  383. package/_src/data/FreeBooleanAlgebra/api.ts +68 -58
  384. package/_src/data/LogLine/Line.ts +5 -3
  385. package/_src/data/LogLine/Message.ts +26 -18
  386. package/_src/data/LogLine/Style.ts +0 -1
  387. package/_src/data/Render/definition.ts +0 -2
  388. package/_src/data/RenderParam/api.ts +1 -1
  389. package/_src/data/TestAnnotation/api.ts +4 -2
  390. package/_src/data/TestAnnotation/definition.ts +0 -3
  391. package/_src/data/TestAnnotationMap.ts +2 -8
  392. package/_src/demo.ts +3 -4
  393. package/_src/util/math.ts +31 -17
  394. package/api.d.ts +12 -12
  395. package/control/AbstractRunnableSpec.d.ts +0 -1
  396. package/control/Annotations/live.d.ts +1 -1
  397. package/control/Assertion/api.d.ts +16 -12
  398. package/control/AssertionIO/api.d.ts +8 -8
  399. package/control/FreeBooleanAlgebraIO/api.d.ts +6 -6
  400. package/control/Gen/api.d.ts +216 -33
  401. package/control/Gen.d.ts +0 -7
  402. package/control/Sample/api.d.ts +14 -14
  403. package/control/Spec/api.d.ts +38 -41
  404. package/control/TestAnnotationRenderer/api.d.ts +3 -3
  405. package/control/TestClock/definition.d.ts +2 -2
  406. package/control/TestConsole/definition.d.ts +1 -1
  407. package/control/TestRandom/definition.d.ts +1 -1
  408. package/control/TestRunner.d.ts +1 -3
  409. package/data/AssertionValue/api.d.ts +8 -8
  410. package/data/ExecutedSpec/api.d.ts +8 -8
  411. package/data/ExecutionResult.d.ts +4 -4
  412. package/data/FreeBooleanAlgebra/api.d.ts +20 -20
  413. package/data/LogLine/Line.d.ts +2 -2
  414. package/data/LogLine/Message.d.ts +10 -10
  415. package/data/TestAnnotation/api.d.ts +1 -1
  416. package/data/TestAnnotation/definition.d.ts +2 -2
  417. package/package.json +4 -4
  418. package/_cjs/control/Gen/api/array.cjs +0 -50
  419. package/_cjs/control/Gen/api/array.cjs.map +0 -1
  420. package/_cjs/control/Gen/api/char.cjs +0 -129
  421. package/_cjs/control/Gen/api/char.cjs.map +0 -1
  422. package/_cjs/control/Gen/api/conc.cjs +0 -73
  423. package/_cjs/control/Gen/api/conc.cjs.map +0 -1
  424. package/_cjs/control/Gen/api/double.cjs +0 -82
  425. package/_cjs/control/Gen/api/double.cjs.map +0 -1
  426. package/_cjs/control/Gen/api/float.cjs +0 -55
  427. package/_cjs/control/Gen/api/float.cjs.map +0 -1
  428. package/_cjs/control/Gen/api/string.cjs +0 -102
  429. package/_cjs/control/Gen/api/string.cjs.map +0 -1
  430. package/_cjs/control/Gen/api/struct.cjs +0 -36
  431. package/_cjs/control/Gen/api/struct.cjs.map +0 -1
  432. package/_mjs/control/Gen/api/array.mjs +0 -31
  433. package/_mjs/control/Gen/api/array.mjs.map +0 -1
  434. package/_mjs/control/Gen/api/char.mjs +0 -95
  435. package/_mjs/control/Gen/api/char.mjs.map +0 -1
  436. package/_mjs/control/Gen/api/conc.mjs +0 -49
  437. package/_mjs/control/Gen/api/conc.mjs.map +0 -1
  438. package/_mjs/control/Gen/api/double.mjs +0 -60
  439. package/_mjs/control/Gen/api/double.mjs.map +0 -1
  440. package/_mjs/control/Gen/api/float.mjs +0 -41
  441. package/_mjs/control/Gen/api/float.mjs.map +0 -1
  442. package/_mjs/control/Gen/api/string.mjs +0 -72
  443. package/_mjs/control/Gen/api/string.mjs.map +0 -1
  444. package/_mjs/control/Gen/api/struct.mjs +0 -18
  445. package/_mjs/control/Gen/api/struct.mjs.map +0 -1
  446. package/_src/control/Gen/api/array.ts +0 -31
  447. package/_src/control/Gen/api/char.ts +0 -83
  448. package/_src/control/Gen/api/conc.ts +0 -48
  449. package/_src/control/Gen/api/double.ts +0 -64
  450. package/_src/control/Gen/api/float.ts +0 -36
  451. package/_src/control/Gen/api/string.ts +0 -71
  452. package/_src/control/Gen/api/struct.ts +0 -21
  453. package/control/Gen/api/array.d.ts +0 -18
  454. package/control/Gen/api/char.d.ts +0 -47
  455. package/control/Gen/api/conc.d.ts +0 -25
  456. package/control/Gen/api/double.d.ts +0 -13
  457. package/control/Gen/api/float.d.ts +0 -7
  458. package/control/Gen/api/string.d.ts +0 -48
  459. package/control/Gen/api/struct.d.ts +0 -8
@@ -2,47 +2,34 @@ const fileName_1 = "(@fncts/test) src/util/math.ts";
2
2
  import * as tsplus_module_1 from "@fncts/io/IO/api";
3
3
  import * as tsplus_module_2 from "@fncts/io/Random/api";
4
4
  /** @internal */
5
-
6
5
  export const MIN_VALUE_32 = 2 ** -126 * 2 ** -23;
7
6
  /** @internal */
8
-
9
7
  export const MAX_VALUE_32 = 2 ** 127 * (1 + (2 ** 23 - 1) / 2 ** 23);
10
8
  /** @internal */
11
-
12
9
  export const EPSILON_32 = 2 ** -23;
13
10
  /** @internal */
14
-
15
11
  const INDEX_POSITIVE_INFINITY_32 = 2139095040; // floatToIndex(MAX_VALUE_32) + 1;
16
-
17
12
  /** @internal */
18
-
19
13
  const INDEX_NEGATIVE_INFINITY_32 = -2139095041; // floatToIndex(-MAX_VALUE_32) - 1
20
-
21
14
  export function safeFloatToIndex(f, label) {
22
15
  const conversionTrick = "you can convert any double to a 32-bit float by using `new Float32Array([myDouble])[0]`";
23
16
  const errorMessage = "fc.floatNext constraints." + label + " must be a 32-bit float - " + conversionTrick;
24
-
25
17
  if (Number.isNaN(f) || Number.isFinite(f) && (f < -MAX_VALUE_32 || f > MAX_VALUE_32)) {
26
- return tsplus_module_1.haltNow(new Error(errorMessage), fileName_1 + ":17:22");
18
+ return tsplus_module_1.haltNow(new Error(errorMessage), fileName_1 + ":16:22");
27
19
  }
28
-
29
20
  const index = floatToIndex(f);
30
-
31
21
  if (!Number.isInteger(index)) {
32
- return tsplus_module_1.haltNow(new Error(errorMessage), fileName_1 + ":21:22");
22
+ return tsplus_module_1.haltNow(new Error(errorMessage), fileName_1 + ":20:22");
33
23
  }
34
-
35
- return tsplus_module_1.succeedNow(index, fileName_1 + ":23:23");
24
+ return tsplus_module_1.succeedNow(index, fileName_1 + ":22:23");
36
25
  }
37
26
  export function decomposeFloat(f) {
38
27
  // 1 => significand 0b1 - exponent 1 (will be preferred)
39
28
  // => significand 0b0.1 - exponent 2
40
29
  const maxSignificand = 1 + (2 ** 23 - 1) / 2 ** 23;
41
-
42
30
  for (let exponent = -126; exponent !== 128; ++exponent) {
43
31
  const powExponent = 2 ** exponent;
44
32
  const maxForExponent = maxSignificand * powExponent;
45
-
46
33
  if (Math.abs(f) <= maxForExponent) {
47
34
  return {
48
35
  exponent,
@@ -50,7 +37,6 @@ export function decomposeFloat(f) {
50
37
  };
51
38
  }
52
39
  }
53
-
54
40
  return {
55
41
  exponent: Number.NaN,
56
42
  significand: Number.NaN
@@ -60,20 +46,16 @@ export function floatToIndex(f) {
60
46
  if (f === Number.POSITIVE_INFINITY) {
61
47
  return INDEX_POSITIVE_INFINITY_32;
62
48
  }
63
-
64
49
  if (f === Number.NEGATIVE_INFINITY) {
65
50
  return INDEX_NEGATIVE_INFINITY_32;
66
51
  }
67
-
68
52
  const {
69
53
  exponent,
70
54
  significand
71
55
  } = decomposeFloat(f);
72
-
73
56
  if (Number.isNaN(exponent) || Number.isNaN(significand) || !Number.isInteger(significand * 0x800000)) {
74
57
  return Number.NaN;
75
58
  }
76
-
77
59
  if (f > 0 || f === 0 && 1 / f === Number.POSITIVE_INFINITY) {
78
60
  return indexInFloatFromDecomp(exponent, significand);
79
61
  } else {
@@ -81,7 +63,6 @@ export function floatToIndex(f) {
81
63
  }
82
64
  }
83
65
  /** @internal */
84
-
85
66
  export function indexInFloatFromDecomp(exponent, significand) {
86
67
  // WARNING: significand >= 0
87
68
  // By construct of significand in decomposeFloat,
@@ -92,10 +73,9 @@ export function indexInFloatFromDecomp(exponent, significand) {
92
73
  // All other ranges (other exponents) have a length of 2**23 elements.
93
74
  if (exponent === -126) {
94
75
  return significand * 0x800000; // significand * 2**23
95
- } // Offset due to exp = -126 + Offset of previous exp (excl. -126) + Offset in current exp
76
+ }
77
+ // Offset due to exp = -126 + Offset of previous exp (excl. -126) + Offset in current exp
96
78
  // 2**24 + (exponent - (-126) -1) * 2**23 + (significand - 1) * 2**23
97
-
98
-
99
79
  return (exponent + 127) * 0x800000 + (significand - 1) * 0x800000;
100
80
  }
101
81
  /**
@@ -105,58 +85,48 @@ export function indexInFloatFromDecomp(exponent, significand) {
105
85
  *
106
86
  * @internal
107
87
  */
108
-
109
88
  export function indexToFloat(index) {
110
89
  if (index < 0) {
111
90
  return -indexToFloat(-index - 1);
112
91
  }
113
-
114
92
  if (index === INDEX_POSITIVE_INFINITY_32) {
115
93
  return Number.POSITIVE_INFINITY;
116
94
  }
117
-
118
95
  if (index < 0x1000000) {
119
96
  // The first 2**24 elements correspond to values having
120
97
  // exponent = -126 and significand = index * 2**(-23)
121
98
  return index * 2 ** -149;
122
99
  }
123
-
124
- const postIndex = index - 0x1000000; // Math.floor(postIndex / 0x800000) = Math.floor(postIndex / 2**23) = (postIndex >> 23)
125
-
126
- const exponent = -125 + (postIndex >> 23); // (postIndex % 0x800000) / 0x800000 = (postIndex & 0x7fffff) / 0x800000
127
-
100
+ const postIndex = index - 0x1000000;
101
+ // Math.floor(postIndex / 0x800000) = Math.floor(postIndex / 2**23) = (postIndex >> 23)
102
+ const exponent = -125 + (postIndex >> 23);
103
+ // (postIndex % 0x800000) / 0x800000 = (postIndex & 0x7fffff) / 0x800000
128
104
  const significand = 1 + (postIndex & 0x7fffff) / 0x800000;
129
105
  return significand * 2 ** exponent;
130
106
  }
131
107
  /** @internal */
132
-
133
108
  export const Zero64 = {
134
109
  sign: 1,
135
110
  data: [0, 0]
136
111
  };
137
112
  /** @internal */
138
-
139
113
  export const Unit64 = {
140
114
  sign: 1,
141
115
  data: [0, 1]
142
116
  };
143
117
  /** @internal */
144
-
145
118
  export function isZero64(a) {
146
119
  return a.data[0] === 0 && a.data[1] === 0;
147
120
  }
148
121
  /** @internal */
149
-
150
122
  export function isStrictlyNegative64(a) {
151
123
  return a.sign === -1 && !isZero64(a);
152
124
  }
153
125
  /** @internal */
154
-
155
126
  export function isStrictlyPositive64(a) {
156
127
  return a.sign === 1 && !isZero64(a);
157
128
  }
158
129
  /** @internal */
159
-
160
130
  export function isEqual64(a, b) {
161
131
  if (a.data[0] === b.data[0] && a.data[1] === b.data[1]) {
162
132
  return a.sign === b.sign || a.data[0] === 0 && a.data[1] === 0; // either the same or both zero
@@ -165,24 +135,19 @@ export function isEqual64(a, b) {
165
135
  return false;
166
136
  }
167
137
  /** @internal */
168
-
169
138
  function isStrictlySmaller64Internal(a, b) {
170
139
  return a[0] < b[0] || a[0] === b[0] && a[1] < b[1];
171
140
  }
172
141
  /** @internal */
173
-
174
-
175
142
  export function isStrictlySmaller64(a, b) {
176
143
  if (a.sign === b.sign) {
177
144
  return a.sign === 1 ? isStrictlySmaller64Internal(a.data, b.data) // a.sign = +1, b.sign = +1
178
145
  : isStrictlySmaller64Internal(b.data, a.data); // a.sign = -1, b.sign = -1
179
- } // a.sign = +1, b.sign = -1 is always false
180
-
181
-
146
+ }
147
+ // a.sign = +1, b.sign = -1 is always false
182
148
  return a.sign === -1 && (!isZero64(a) || !isZero64(b)); // a.sign = -1, b.sign = +1
183
149
  }
184
150
  /** @internal */
185
-
186
151
  export function clone64(a) {
187
152
  return {
188
153
  sign: a.sign,
@@ -190,24 +155,19 @@ export function clone64(a) {
190
155
  };
191
156
  }
192
157
  /** @internal */
193
-
194
158
  function substract64DataInternal(a, b) {
195
159
  let reminderLow = 0;
196
160
  let low = a[1] - b[1];
197
-
198
161
  if (low < 0) {
199
162
  reminderLow = 1;
200
163
  low = low >>> 0;
201
164
  }
202
-
203
165
  return [a[0] - b[0] - reminderLow, low];
204
166
  }
205
167
  /**
206
168
  * Expects a >= b
207
169
  * @internal
208
170
  */
209
-
210
-
211
171
  function substract64Internal(a, b) {
212
172
  if (a.sign === 1 && b.sign === -1) {
213
173
  // Operation is a simple sum of a + abs(b)
@@ -217,10 +177,9 @@ function substract64Internal(a, b) {
217
177
  sign: 1,
218
178
  data: [high >>> 0, low >>> 0]
219
179
  };
220
- } // a.sign === -1 with b.sign === 1 is impossible given: a - b >= 0, except for a = 0 and b = 0
180
+ }
181
+ // a.sign === -1 with b.sign === 1 is impossible given: a - b >= 0, except for a = 0 and b = 0
221
182
  // Operation is a substraction
222
-
223
-
224
183
  return {
225
184
  sign: 1,
226
185
  data: a.sign === 1 ? substract64DataInternal(a.data, b.data) : substract64DataInternal(b.data, a.data)
@@ -231,22 +190,18 @@ function substract64Internal(a, b) {
231
190
  * @returns When result is zero always with sign=1
232
191
  * @internal
233
192
  */
234
-
235
-
236
193
  export function substract64(arrayIntA, arrayIntB) {
237
194
  if (isStrictlySmaller64(arrayIntA, arrayIntB)) {
238
195
  const out = substract64Internal(arrayIntB, arrayIntA);
239
196
  out.sign = -1;
240
197
  return out;
241
198
  }
242
-
243
199
  return substract64Internal(arrayIntA, arrayIntB);
244
200
  }
245
201
  /**
246
202
  * Negative version of an ArrayInt64
247
203
  * @internal
248
204
  */
249
-
250
205
  export function negative64(arrayIntA) {
251
206
  return {
252
207
  sign: -arrayIntA.sign,
@@ -258,23 +213,19 @@ export function negative64(arrayIntA) {
258
213
  * @returns When result is zero always with sign=1
259
214
  * @internal
260
215
  */
261
-
262
216
  export function add64(arrayIntA, arrayIntB) {
263
217
  if (isZero64(arrayIntB)) {
264
218
  if (isZero64(arrayIntA)) {
265
219
  return clone64(Zero64);
266
220
  }
267
-
268
221
  return clone64(arrayIntA);
269
222
  }
270
-
271
223
  return substract64(arrayIntA, negative64(arrayIntB));
272
224
  }
273
225
  /**
274
226
  * Halve an ArrayInt64
275
227
  * @internal
276
228
  */
277
-
278
229
  export function halve64(a) {
279
230
  return {
280
231
  sign: a.sign,
@@ -285,7 +236,6 @@ export function halve64(a) {
285
236
  * Apply log2 to an ArrayInt64 (preserve sign)
286
237
  * @internal
287
238
  */
288
-
289
239
  export function logLike64(a) {
290
240
  // Math.floor(Math.log(hi * 2**32 + low) / Math.log(2)) <= Math.floor(Math.log(2**64) / Math.log(2)) = 64
291
241
  return {
@@ -294,19 +244,15 @@ export function logLike64(a) {
294
244
  };
295
245
  }
296
246
  /** @internal */
297
-
298
247
  const INDEX_POSITIVE_INFINITY = {
299
248
  sign: 1,
300
249
  data: [2146435072, 0]
301
250
  }; // doubleToIndex(Number.MAX_VALUE) + 1;
302
-
303
251
  /** @internal */
304
-
305
252
  const INDEX_NEGATIVE_INFINITY = {
306
253
  sign: -1,
307
254
  data: [2146435072, 1]
308
255
  }; // doubleToIndex(-Number.MAX_VALUE) - 1
309
-
310
256
  /**
311
257
  * Decompose a 64-bit floating point number into a significand and exponent
312
258
  * such that:
@@ -322,16 +268,13 @@ const INDEX_NEGATIVE_INFINITY = {
322
268
  *
323
269
  * @internal
324
270
  */
325
-
326
271
  export function decomposeDouble(d) {
327
272
  // 1 => significand 0b1 - exponent 1 (will be preferred)
328
273
  // => significand 0b0.1 - exponent 2
329
274
  const maxSignificand = 2 - Number.EPSILON;
330
-
331
275
  for (let exponent = -1022; exponent !== 1024; ++exponent) {
332
276
  const powExponent = 2 ** exponent;
333
277
  const maxForExponent = maxSignificand * powExponent;
334
-
335
278
  if (Math.abs(d) <= maxForExponent) {
336
279
  return {
337
280
  exponent,
@@ -339,20 +282,16 @@ export function decomposeDouble(d) {
339
282
  };
340
283
  }
341
284
  }
342
-
343
285
  return {
344
286
  exponent: Number.NaN,
345
287
  significand: Number.NaN
346
288
  };
347
289
  }
348
290
  /** @internal */
349
-
350
291
  function positiveNumberToInt64(n) {
351
292
  return [~~(n / 0x100000000), n >>> 0];
352
293
  }
353
294
  /** @internal */
354
-
355
-
356
295
  function indexInDoubleFromDecomp(exponent, significand) {
357
296
  // WARNING: significand >= 0
358
297
  // By construct of significand in decomposeDouble,
@@ -364,17 +303,13 @@ function indexInDoubleFromDecomp(exponent, significand) {
364
303
  if (exponent === -1022) {
365
304
  // We want the significand to be an integer value (like an index)
366
305
  const rescaledSignificand = significand * 2 ** 52; // significand * 2**52
367
-
368
306
  return positiveNumberToInt64(rescaledSignificand);
369
- } // Offset due to exp = -1022 + Offset of previous exp (excl. -1022) + Offset in current exp
307
+ }
308
+ // Offset due to exp = -1022 + Offset of previous exp (excl. -1022) + Offset in current exp
370
309
  // 2**53 + (exponent - (-1022) -1) * 2**52 + (significand - 1) * 2**52
371
310
  // (exponent + 1023) * 2**52 + (significand - 1) * 2**52
372
-
373
-
374
311
  const rescaledSignificand = (significand - 1) * 2 ** 52; // (significand-1) * 2**52
375
-
376
312
  const exponentOnlyHigh = (exponent + 1023) * 2 ** 20; // (exponent + 1023) * 2**52 => [high: (exponent + 1023) * 2**20, low: 0]
377
-
378
313
  const index = positiveNumberToInt64(rescaledSignificand);
379
314
  index[0] += exponentOnlyHigh;
380
315
  return index;
@@ -387,21 +322,16 @@ function indexInDoubleFromDecomp(exponent, significand) {
387
322
  *
388
323
  * @internal
389
324
  */
390
-
391
-
392
325
  export function doubleToIndex(d) {
393
326
  if (d === Number.POSITIVE_INFINITY) {
394
327
  return clone64(INDEX_POSITIVE_INFINITY);
395
328
  }
396
-
397
329
  if (d === Number.NEGATIVE_INFINITY) {
398
330
  return clone64(INDEX_NEGATIVE_INFINITY);
399
331
  }
400
-
401
332
  const decomp = decomposeDouble(d);
402
333
  const exponent = decomp.exponent;
403
334
  const significand = decomp.significand;
404
-
405
335
  if (d > 0 || d === 0 && 1 / d === Number.POSITIVE_INFINITY) {
406
336
  return {
407
337
  sign: 1,
@@ -409,14 +339,12 @@ export function doubleToIndex(d) {
409
339
  };
410
340
  } else {
411
341
  const indexOpposite = indexInDoubleFromDecomp(exponent, -significand);
412
-
413
342
  if (indexOpposite[1] === 0xffffffff) {
414
343
  indexOpposite[0] += 1;
415
344
  indexOpposite[1] = 0;
416
345
  } else {
417
346
  indexOpposite[1] += 1;
418
347
  }
419
-
420
348
  return {
421
349
  sign: -1,
422
350
  data: indexOpposite
@@ -430,28 +358,24 @@ export function doubleToIndex(d) {
430
358
  *
431
359
  * @internal
432
360
  */
433
-
434
361
  export function indexToDouble(index) {
435
362
  if (index.sign === -1) {
436
363
  const indexOpposite = {
437
364
  sign: 1,
438
365
  data: [index.data[0], index.data[1]]
439
366
  };
440
-
441
367
  if (indexOpposite.data[1] === 0) {
442
368
  indexOpposite.data[0] -= 1;
443
369
  indexOpposite.data[1] = 0xffffffff;
444
370
  } else {
445
371
  indexOpposite.data[1] -= 1;
446
372
  }
447
-
448
373
  return -indexToDouble(indexOpposite); // -indexToDouble(-index - 1);
449
374
  }
450
375
 
451
376
  if (isEqual64(index, INDEX_POSITIVE_INFINITY)) {
452
377
  return Number.POSITIVE_INFINITY;
453
378
  }
454
-
455
379
  if (index.data[0] < 0x200000) {
456
380
  // if: index < 2 ** 53 <--> index[0] < 2 ** (53-32) = 0x20_0000
457
381
  // The first 2**53 elements correspond to values having
@@ -461,19 +385,17 @@ export function indexToDouble(index) {
461
385
  // = index * 2 ** -1074
462
386
  return (index.data[0] * 0x100000000 + index.data[1]) * 2 ** -1074;
463
387
  }
464
-
465
388
  const postIndexHigh = index.data[0] - 0x200000; // postIndex = index - 2 ** 53
466
389
  // exponent = -1021 + Math.floor(postIndex / 2**52)
467
390
  // = -1021 + Math.floor(postIndexHigh / 2**(52-32))
468
391
  // = -1021 + Math.floor(postIndexHigh / 2**20)
469
392
  // = -1021 + (postIndexHigh >> 20)
470
-
471
- const exponent = -1021 + (postIndexHigh >> 20); // significand = 1 + (postIndex % 2**52) / 2**52
393
+ const exponent = -1021 + (postIndexHigh >> 20);
394
+ // significand = 1 + (postIndex % 2**52) / 2**52
472
395
  // = 1 + ((postIndexHigh * 2**32 + postIndexLow) % 2**52) / 2**52
473
396
  // = 1 + ((postIndexHigh % 2**20) * 2**32 + postIndexLow) / 2**52
474
397
  // = 1 + ((postIndexHigh & 0xfffff) * 2**32 + postIndexLow) / 2**52
475
398
  // = 1 + ((postIndexHigh & 0xfffff) * 2**32 + postIndexLow) * Number.EPSILON
476
-
477
399
  const significand = 1 + ((postIndexHigh & 0xfffff) * 2 ** 32 + index.data[1]) * Number.EPSILON;
478
400
  return significand * 2 ** exponent;
479
401
  }
@@ -482,13 +404,11 @@ export function indexToDouble(index) {
482
404
  *
483
405
  * @internal
484
406
  */
485
-
486
407
  export function safeDoubleToIndex(d, label) {
487
408
  if (Number.isNaN(d)) {
488
409
  // Number.NaN does not have any associated index in the current implementation
489
410
  return tsplus_module_1.haltNow(new Error("fc.doubleNext constraints." + label + " must be a 32-bit float"), fileName_1 + ":403:22");
490
411
  }
491
-
492
412
  return tsplus_module_1.succeedNow(doubleToIndex(d), fileName_1 + ":405:23");
493
413
  }
494
414
  const EPSILON = /*#__PURE__*/Math.pow(2, -52);
@@ -498,41 +418,30 @@ export function nextUp(x) {
498
418
  if (x !== x) {
499
419
  return x;
500
420
  }
501
-
502
421
  if (x === -1 / 0) {
503
422
  return -MAX_VALUE;
504
423
  }
505
-
506
424
  if (x === +1 / 0) {
507
425
  return +1 / 0;
508
426
  }
509
-
510
427
  if (x === +MAX_VALUE) {
511
428
  return +1 / 0;
512
429
  }
513
-
514
430
  let y = x * (x < 0 ? 1 - EPSILON / 2 : 1 + EPSILON);
515
-
516
431
  if (y === x) {
517
432
  y = MIN_VALUE * EPSILON > 0 ? x + MIN_VALUE * EPSILON : x + MIN_VALUE;
518
433
  }
519
-
520
434
  if (y === +1 / 0) {
521
435
  y = +MAX_VALUE;
522
436
  }
523
-
524
437
  const b = x + (y - x) / 2;
525
-
526
438
  if (x < b && b < y) {
527
439
  y = b;
528
440
  }
529
-
530
441
  const c = (y + x) / 2;
531
-
532
442
  if (x < c && c < y) {
533
443
  y = c;
534
444
  }
535
-
536
445
  return y === 0 ? -0 : y;
537
446
  }
538
447
  export function nextAfter(x, y) {
@@ -542,17 +451,14 @@ export function computeBiasedRanges(min, max, biasedRanges) {
542
451
  if (biasedRanges != null) {
543
452
  return biasedRanges;
544
453
  }
545
-
546
454
  if (isEqual64(min, max)) {
547
455
  return [{
548
456
  min,
549
457
  max
550
458
  }];
551
459
  }
552
-
553
460
  const minStrictlySmallerThanZero = isStrictlyNegative64(min);
554
461
  const maxStrictlyGreaterThanZero = isStrictlyPositive64(max);
555
-
556
462
  if (minStrictlySmallerThanZero && maxStrictlyGreaterThanZero) {
557
463
  const logMin = logLike64(min);
558
464
  const logMax = logLike64(max);
@@ -581,22 +487,19 @@ export function computeBiasedRanges(min, max, biasedRanges) {
581
487
  }
582
488
  export function computeArrayInt64GenerateRange(min, max, biasFactor, biasedRanges) {
583
489
  return tsplus_module_1.gen(function* (_) {
584
- if (biasFactor === undefined || (yield* _(tsplus_module_2.nextIntBetween(1, biasFactor, fileName_1 + ":483:68"), fileName_1 + ":483:46")) !== 1) {
490
+ if (biasFactor === undefined || (yield* _(tsplus_module_2.nextIntBetween(1, biasFactor, fileName_1 + ":497:68"), fileName_1 + ":497:46")) !== 1) {
585
491
  return {
586
492
  min,
587
493
  max
588
494
  };
589
495
  }
590
-
591
496
  const ranges = computeBiasedRanges(min, max, biasedRanges);
592
-
593
497
  if (ranges.length === 1) {
594
498
  return ranges[0];
595
499
  }
596
-
597
- const id = yield* _(tsplus_module_2.nextIntBetween(-2 * (ranges.length - 1), ranges.length - 2, fileName_1 + ":490:46"), fileName_1 + ":490:24");
500
+ const id = yield* _(tsplus_module_2.nextIntBetween(-2 * (ranges.length - 1), ranges.length - 2, fileName_1 + ":504:46"), fileName_1 + ":504:24");
598
501
  return id < 0 ? ranges[0] : ranges[id + 1];
599
- }, fileName_1 + ":482:16");
502
+ }, fileName_1 + ":496:16");
600
503
  }
601
504
  export function clamp(n, min, max) {
602
505
  return n < min ? min : n > max ? max : n;
@@ -1 +1 @@
1
- {"version":3,"file":"math.mjs","mappings":"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","names":["MIN_VALUE_32","MAX_VALUE_32","EPSILON_32","INDEX_POSITIVE_INFINITY_32","INDEX_NEGATIVE_INFINITY_32","safeFloatToIndex","f","label","conversionTrick","errorMessage","Number","isNaN","isFinite","tsplus_module_1","Error","fileName_1","index","floatToIndex","isInteger","decomposeFloat","maxSignificand","exponent","powExponent","maxForExponent","Math","abs","significand","NaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","indexInFloatFromDecomp","indexToFloat","postIndex","Zero64","sign","data","Unit64","isZero64","a","isStrictlyNegative64","isStrictlyPositive64","isEqual64","b","isStrictlySmaller64Internal","isStrictlySmaller64","clone64","substract64DataInternal","reminderLow","low","substract64Internal","high","substract64","arrayIntA","arrayIntB","out","negative64","add64","halve64","floor","logLike64","log","INDEX_POSITIVE_INFINITY","INDEX_NEGATIVE_INFINITY","decomposeDouble","d","EPSILON","positiveNumberToInt64","n","indexInDoubleFromDecomp","rescaledSignificand","exponentOnlyHigh","doubleToIndex","decomp","indexOpposite","indexToDouble","postIndexHigh","safeDoubleToIndex","pow","MAX_VALUE","MIN_VALUE","nextUp","x","y","c","nextAfter","computeBiasedRanges","min","max","biasedRanges","minStrictlySmallerThanZero","maxStrictlyGreaterThanZero","logMin","logMax","logGap","closeToMin","closeToMax","computeArrayInt64GenerateRange","biasFactor","_","undefined","tsplus_module_2","ranges","length","id","clamp"],"sourceRoot":"","sources":["../../_src/util/math.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"math.mjs","mappings":"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","names":["MIN_VALUE_32","MAX_VALUE_32","EPSILON_32","INDEX_POSITIVE_INFINITY_32","INDEX_NEGATIVE_INFINITY_32","safeFloatToIndex","f","label","conversionTrick","errorMessage","Number","isNaN","isFinite","tsplus_module_1","Error","index","floatToIndex","isInteger","decomposeFloat","maxSignificand","exponent","powExponent","maxForExponent","Math","abs","significand","NaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","indexInFloatFromDecomp","indexToFloat","postIndex","Zero64","sign","data","Unit64","isZero64","a","isStrictlyNegative64","isStrictlyPositive64","isEqual64","b","isStrictlySmaller64Internal","isStrictlySmaller64","clone64","substract64DataInternal","reminderLow","low","substract64Internal","high","substract64","arrayIntA","arrayIntB","out","negative64","add64","halve64","floor","logLike64","log","INDEX_POSITIVE_INFINITY","INDEX_NEGATIVE_INFINITY","decomposeDouble","d","EPSILON","positiveNumberToInt64","n","indexInDoubleFromDecomp","rescaledSignificand","exponentOnlyHigh","doubleToIndex","decomp","indexOpposite","indexToDouble","postIndexHigh","safeDoubleToIndex","pow","MAX_VALUE","MIN_VALUE","nextUp","x","y","c","nextAfter","computeBiasedRanges","min","max","biasedRanges","minStrictlySmallerThanZero","maxStrictlyGreaterThanZero","logMin","logMax","logGap","closeToMin","closeToMax","computeArrayInt64GenerateRange","biasFactor","_","undefined","tsplus_module_2","ranges","length","id","clamp"],"sourceRoot":"","sources":["../../_src/util/math.ts"],"sourcesContent":[null]}